"git add, git commit" 이전 또는 이후에 "git pull"을 수행해야 합니까?
올바른 방법은 무엇입니까?
git add foo.js
git commit foo.js -m "commit"
git pull
git push
또는
git pull
git add foo.js
git commit foo.js -m "commit"
git push
또는
git add foo.js
git pull
git commit foo.js -m "commit"
git push
업데이트:
이 경우에 제가 사용하는 것을 언급하는 것을 잊었습니다.git add
추적 및 수정된 파일을 준비합니다.리포지토리에 새 파일을 포함하지 않습니다.명령 순서가 변경됩니까?
이를 위한 최선의 방법은 다음과 같습니다.
로컬 변경 내용을 저장합니다.
git stash
분기를 최신 코드로 업데이트합니다.
git pull
로컬 변경 내용을 최신 코드로 병합합니다.
git stash apply
변경사항 추가, 커밋 및 푸시
git add
git commit
git push
제 경험상 이것은 Git(어쨌든 명령줄에서)에 대한 저항을 최소화하는 경로입니다.
pull = fetch + merge.
병합하기 전에 수행한 작업을 커밋해야 합니다.
그러니 약속을 한 후에 당기세요.
대규모 합병과 발생 가능한 충돌을 최소화하기 위해 가능한 한 자주 원격 지사에서 철수하는 것이 좋습니다.
그렇긴 하지만, 저는 첫 번째 옵션을 선택할 것입니다.
git add foo.js
git commit foo.js -m "commit"
git pull
git push
꺼내기 전에 변경 사항을 커밋하여 꺼내기 중에 커밋이 원격 변경 사항과 병합되도록 합니다.이로 인해 코드가 이미 커밋되었음을 알고 처리하기 시작할 수 있는 충돌이 발생할 수 있으며, 어떤 이유로든 병합을 중단해야 합니다.
저는 누군가가 제 의견에 동의하지 않을 것이라고 확신합니다. 저는 이 병합 흐름을 수행하는 올바른 방법은 없다고 생각합니다. 오직 사람들에게 가장 효과적인 방법만 있습니다.
생각합니다git pull --rebase
특정 지점에 없는 원격 커밋 위에 로컬 최근 커밋을 설정하는 가장 깨끗한 방법입니다.
따라서 이렇게 하면 변경을 시작할 때마다 끌 필요가 없습니다.
변경 사항을 원격 분기의 현재 상태 맨 위에 배치하려고 합니다.그래서 아마도 당신은 약속하기 직전에 당기고 싶을 것입니다.그런 다음 변경사항을 다시 누릅니다.
원격 지점과 충돌이 없는 한 "더러운" 로컬 파일은 문제가 되지 않습니다.그러나 충돌이 발생하면 병합이 실패하므로 로컬 변경을 수행하기 전에 풀링할 위험이나 위험이 없습니다.
나에게 가장 좋은 방법은:
- 새 분기 생성, 체크아웃
- 파일 만들기 또는 수정, git 추가, git 커밋
- 마스터 분기로 돌아가서 원격에서 풀을 수행합니다(최신 마스터 변경사항을 가져오려면).
- 새로 생성된 분기를 마스터와 병합
- 새로 생성된 분기 제거
- 마스터를 원격으로 푸시
또는 원격에서 새로 생성된 분기를 밀어넣고 병합할 수 있습니다(이 방법을 사용하는 경우 원격 마스터에서 끌어내야 합니다).
언급URL : https://stackoverflow.com/questions/18529206/when-do-i-need-to-do-git-pull-before-or-after-git-add-git-commit
'programing' 카테고리의 다른 글
python's sorted()는 어떤 알고리즘을 사용합니까? (0) | 2023.08.21 |
---|---|
Kubernetes에 MariaDB ColumnStore를 설치하는 방법은 무엇입니까? (0) | 2023.08.21 |
빈 이름을 참조하여 @Scheduled 주석에서 @ConfigurationProperties 사용 (0) | 2023.08.21 |
"return false;"는 무엇을 합니까? (0) | 2023.08.21 |
jquery를 사용하여 뷰포트를 기준으로 요소의 위치 가져오기 (0) | 2023.08.21 |