IT이야기

"git rebase origin"vs. "git rebase origin / master"

cyworld 2021. 4. 30. 21:46
반응형

"git rebase origin"vs. "git rebase origin / master"


나는 차이하지 않습니다 git rebase origingit rebase origin/master. 제 경우에는 git 저장소를 두 번 복제했습니다. 첫 번째 클론에서는을 사용해야 git rebase origin하고 다른 클론에서는을 사용해야합니다 git rebase origin/master.

예 : http://paste.dennis-boldt.de/2011/05/11/git-rebase


git rebase origin수단 "의 트래킹 지점에서 REBASE origin"동안 git rebase origin/master수단 "지점에서 REBASE masterorigin"

에 추적 분기가 있어야합니다. ~/Desktop/test즉, 리베이스 git rebase origin할 분기 알고 있음을 의미합니다 origin. 추적 분기가 없으면 (의 경우 ~/Desktop/fallstudie) git은 어떤 분기를 가져와야하는지 알지 못해 origin실패합니다.

이 문제를 해결하려면 다음을 사용하여 분기 트랙 origin/master만들 수 있습니다 .

git branch --set-upstream-to=origin/master 

또는 master현재 체크 아웃 된 지점이 아닌 경우 :

git branch --set-upstream-to=origin/master master

더 나은 옵션은 다음과 같습니다.

git remote set-head -a origin

문서에서 :

-a를 사용하면 HEAD를 결정하기 위해 리모컨이 쿼리되고 $ GIT_DIR / remotes // HEAD가 동일한 분기로 설정됩니다. 예를 들어 원격 HEAD가 다음을 가리키는 경우 "git remote set-head origin -a"는 $ GIT_DIR / refs / remotes / origin / HEAD를 refs / remotes / origin / next로 설정합니다. 이것은 refs / remotes / origin / next가 이미 존재하는 경우에만 작동합니다. 그렇지 않은 경우 먼저 가져와야합니다.

이것은 실제로 꽤 오래되었습니다 (v1.6.3 이후). 내가 그것을 어떻게 놓쳤는 지 확실하지 않습니다!


이름이 "HEAD"인 [.git \ refs \ remotes \ origin] 아래에 새 파일을 만들고 여기에 "ref : refs / remotes / origin / master"내용을 넣을 수 있습니다. 이것은 당신의 문제를 해결할 것입니다.

빈 저장소의 클론이 이것으로 이어질 것 같습니다. 커밋 객체가 없기 때문에 빈 저장소에 HEAD가 없을 수 있습니다.

사용할 수 있습니다

git log --remotes --branches --oneline --decorate

"문제"저장소에는 "origin / HEAD"가없는 반면 각 저장소 간의 차이점을 확인하려면

편집 : 명령 줄을 사용하여 방법 제공
git 명령 줄을 사용하여이 작업을 수행 할 수도 있습니다. 결과는 동일합니다.

git symbolic-ref refs / remotes / origin / HEAD refs / remotes / origin / master

참조 URL : https://stackoverflow.com/questions/5963597/git-rebase-origin-vs-git-rebase-origin-master

반응형