질문/조언질답게시판
Extra Form
PHP PHP 7.4
CMS Rhymix 2.x

안녕하세요.

 

쉘 상에서 git 사용법중에 특정 커밋만 적용하는 방법이 있나요?

git cherry-pick 을 이용해서 커밋하는 줄 알았는데 뭔가 의도되지 되지 않습니다.

 

라이믹스에서 특정 패치만 따로 적용하고 싶어 특정 커밋만 적용하는 방법을 알고 싶습니다.

그리고 나중에 별다른 추가 작업 없이 git pull로 업데이트가 가능한지도 궁금합니다!

  • profile

    특정 커밋만 적용하는 것은 cherry-pick이 맞습니다만, 구체적으로 어떤 명령을 시도하셨고 어떤 결과가 나왔는지 적어주시지 않으면 무엇이 문제인지 알 수 없습니다.

    cherry-pick을 사용한 후에 pull하려고 하면 커밋 순서가 일치하지 않아서 에러납니다. 정식버전으로 업데이트하시려면 cherry-pick하지 않은 순정상태로 되돌린 후에 pull하거나, 아예 처음부터 다른 브랜치를 만들고 거기에서 cherry-pick하여 사용하시다가 원본 브랜치로 돌아가서 pull하는 방법이 있습니다.

     

    하나의 브랜치 안에서 커밋 순서는 완벽하게 일치해야 하지만, 브랜치는 10개를 만들든 1000개를 만들든 독립적으로 운영할 수 있고, 문제가 있으면 폐기하기도 쉽습니다. 단 하나의 커밋이라도 순정상태의 master, develop 브랜치를 그대로 따라가지 않으실 예정이라면 일단 브랜치부터 하나 만들어서 작업하시는 것이 좋습니다.

  • profile profile

    답변 감사합니다.
    제가 생각한 커밋 적용과 그 후의 조치에는 약간 차이가 있군요. 특정 커밋을 적용 후 나중에 그 커밋이 적용된 마스터 브랜치를 통채로 업데이트를 하면 같이 적용이 될 줄 알았거든요.

    커밋하려고 했던 내용은 https://github.com/rhymix/rhymix/commit/eb56785d 이 것이고, 마스터브랜치에 적용될 때까지 기다려야 겠습니다.

  • profile profile
    그냥 잠시 develop 브랜치로 넘어오시면 됩니다. git checkout develop
  • profile profile
    앗, 감사합니다.
    디벨롭 브랜치로 넘어가야겠습니다!