반응형

Pull

원격 저장소에 관리되던 정보를 가져오면서 자동으로 병합(Merge)까지 수행해주는 역할을 합니다.

 

PullPractice 파일에 가져올 주석 부분을 Master 브랜치에 추가를 하고, commit & push를 진행하여 줍니다.


PullPractice에서 pull을 진행하게 되면 아래의 화면이 나타나게 되고, 충돌이 없다면 바로 코드를 가져오게 됩니다.


결과화면

결과 화면

PullPractice의 화면을 보게 되면 Master 브랜치에서 입력한 내용이 가져와서 추가된 것을 확인할 수 있습니다.


pull과정에서 충돌 발생시

https://a070415.tistory.com/entry/Git-%EC%86%8C%EC%8A%A4%ED%8A%B8%EB%A6%ACSourcetree-Merge-Conflict

 

[Git] 소스트리(Sourcetree) Merge Conflict

https://a070415.tistory.com/21 [Git] 소스트리(Sourcetree) 병합(Merge) Merge -> 다른 브랜치의 내용을 현재 check out된 브랜치에 병합하는 것. FirstBranch에 '첫번째 브랜치' 라는 주석 추가 Merge 후 Push 첫번째 브랜

junn97.com

 

반응형
반응형

스태시

로컬에서 작업한 소스 내용을 임시로 다른 곳에 저장, 간직해 놓는 기능입니다.

 

 

error: Your local changes to the following files would be overwritten by checkout: 파일명

Please commit your changes or stash them before you switch branches.

 

다른 브랜치로 이동하기 전 작업하고 있던 브랜치에서 변경사항이 있는데, 제대로 커밋(저장)하지 않아 발생하는 오류입니다.


 

test_stash라는 이름으로 커밋하지않은 파일을 임시저장 합니다.

 

저장한 내용은 후에 불러낼 수 있으며, 현재 상태에서 커밋 및 브랜치 이동이 가능한 것을 확인 할 수 있습니다.

반응형
반응형

체리 픽

  -> 다른 브랜치에서 하나의 커밋만 가져와서 현재 브랜치에 반영시키는 것.

 

 

SecondBranch에서 master 브랜치의 내용을 체리 픽

 


 

충돌(conflict) 발생 시 해당 부분 수정 후 충돌 해결을 진행하시면 됩니다.

https://a070415.tistory.com/entry/Git-%EC%86%8C%EC%8A%A4%ED%8A%B8%EB%A6%ACSourcetree-Merge-Conflict

 

[Git] 소스트리(Sourcetree) Merge Conflict

https://a070415.tistory.com/21 [Git] 소스트리(Sourcetree) 병합(Merge) Merge -> 다른 브랜치의 내용을 현재 check out된 브랜치에 병합하는 것. FirstBranch에 '첫번째 브랜치' 라는 주석 추가 Merge 후 Push 첫번째 브랜

junn97.com

 

반응형
반응형

Revert

commit을 진행 후 수정을 위해 되돌리고 싶을 경우 '커밋 되돌리기(Revert)'를 하시면 됩니다.

해당 내용에서 우클릭 - 커밋 되돌리기(Revert)

History에 내역이 남게 되며, Revert가 진행이 됩니다.

반응형
반응형

Merge conflict

https://a070415.tistory.com/entry/Git-%EC%86%8C%EC%8A%A4%ED%8A%B8%EB%A6%ACSourcetree-%EB%B3%91%ED%95%A9Merge

 

[Git] 소스트리(Sourcetree) 병합(Merge)

Merge -> 다른 브랜치의 내용을 현재 check out된 브랜치에 병합하는 것. 병합 테스트를 위해 FirstBranch에 '첫번째 브랜치' 라는 주석을 추가하고 commit / push를 진행합니다. 문제가 없다면 병합이 되고,

junn97.com

병합(merge)시 같은 라인의 코드를 수정하였을 경우 충돌(conflict) 이 발생하며, 다음을 통해 어떻게 해결을 해야하는지 알아보겠습니다.


충돌을 발생시키기 위해서 SecondBranch에 주석을 넣어준 후 commit / push을 진행합니다.

 

Merge

병합할 부분에 체크아웃을 한 후에 상단의 병합을 눌러 진행을 합니다.


충돌 병합

 

같은 라인의 코드를 수정하였으므로 conflict가 발생 하였습니다.

 

 

네모박스 상단의 경우 현재브랜치에서의 코드 내용이며, 하단의 경우 병합할 브랜치에서 충돌이 되는 내용입니다.

 

<<< Head === >>> 브랜치 이름

내용을 삭제한 후, 충돌되는 코드를 적절히 수정해 줍니다.


충돌해결

 

 

해결 후 우클릭 - 충돌해결 해결된 것으로 표시를 하여 sourcetree에 수정사항을 알려줍니다.

 

 

최종적으로 커밋을 하면 병합이 정상적으로 진행이 됩니다.


결과

Master 브랜치 화면

 

병합 후 Master 화면을 보시면 첫번째 브랜치와 두번째 브랜치의 내용이 합쳐진 것을 확인 하실 수 있습니다.

반응형
반응형

Merge

  -> 다른 브랜치의 내용을 현재 check out브랜치에 병합하는 것.


병합 테스트를 위해 FirstBranch에 '첫번째 브랜치' 라는 주석을 추가하고 commit / push를 진행합니다.

 

 

문제가 없다면 병합이 되고, 그래프 부분을 보시면 Master 브랜치에 FristBranch가 Merge되어있는 것을 확인 하실 수 있습니다.


결과화면

 

Master 브랜치에 체크아웃 하고 내용을 확인하게 되면, 첫번째 브랜치에 추가한 주석이 Master 브랜치에 합쳐진 것을 확인 하실 수 있습니다.


충돌 발생시?

https://a070415.tistory.com/entry/Git-%EC%86%8C%EC%8A%A4%ED%8A%B8%EB%A6%ACSourcetree-Merge-Conflict

 

[Git] 소스트리(Sourcetree) Merge Conflict

https://a070415.tistory.com/21 [Git] 소스트리(Sourcetree) 병합(Merge) Merge -> 다른 브랜치의 내용을 현재 check out된 브랜치에 병합하는 것. FirstBranch에 '첫번째 브랜치' 라는 주석 추가 Merge 후 Push 첫번째 브랜

junn97.com

반응형

+ Recent posts