2012-04-23 2 views
4

pull과 같은 위치에서 rebase을 사용할 수없는 이유는 무엇입니까? 예를 들어, 내가 현역에 있다면 다른 저장소에서 가져올 수 있습니다 :URL/경로에서 자식 리베이스

그러나 다른 저장소에서 리베이스 할 수 없습니다.

git rebase /path/to/other 

rebase에 대한 도움말은 어떤 refspec 년대를 언급하지 않는, 그래서 나는 경우에도, 나는 /를 지정해야 할 수있는 방법, 또는 모르는 : 다음과 같은 오류가 발생합니다.

어떻게 다른 위치에서 rebase을 사용할 수 있습니까?

답변

6

git pullgit rebase은 완전히 다른 일을하기 때문입니다. git pull이 무엇

:

  1. 이 검색은 일부 원격 저장소에서 커밋 및 원격 추적 지점에 배치합니다.
  2. 현재 분기에 해당하는 원격 추적 분기를 현재 분기에 병합합니다.

무엇 git rebase :

  1. 이동 다른 지점의 상단에 현재의 지점에서 커밋.

는 (두 경우 모두, 그 바로 디폴트이다.)이 git rebase 지점에서 동작하면서

주된 차이점은,이 git pull 원격 저장소에서 동작한다는 것이다. 그래서 git rebase /path/to/other이 작동하지 않습니다. /path/to/other은 지사가 아닙니다.

그러나 당신은 당신이 rebase 대신 merge을 수행 할 제외 git pull이 무엇을 수행하려는 경우, 해당 작업을 수행 할 수 있습니다 git pull --rebase를 사용합니다.

+0

'git pull --rebase'는 정상적으로 작동합니다. 고맙습니다. –

+2

그래서'git pull'은'fetch + merge' 또는'fetch + rebase'를 조합 한 편리한 래퍼 일뿐입니다. –

+0

@ edA-qamort-ora-y, 맞습니다. 문서에서 "기본 모드에서 git pull은'git fetch'와'git merge FETCH_HEAD'의 줄임말입니다." – svick

2
git pull --rebase /path/to/other 
관련 문제