2012-03-28 8 views
0

リモート "origin/master"に基づいてブランチを作成しました。その新しいブランチを "origin/tester"としてリモートにプッシュしました。そして、ローカルブランチを更新してorigin/masterの代わりに新しいリモートをマージしました。上流ブランチの親の変更をブランチに定期的にリベースする方法はありますか?

マスターは私が必要ないくつかのコミット(新しいファイル「テストファイル」が追加されました)得た後、私は走った(私の地元のテスターのブランチをチェックアウトして):

git fetch origin 
git rebase origin/master 
git push origin tester 

そして、すべてがうまくでした。予想された変更は私のローカルブランチに含まれ、リモートの起点/テスターブランチにきれいにプッシュされました。次に、両方のブランチでより多くの変更が行われました(別々のファイルでの矛盾しない変更)。だから、私はやった:

git fetch origin 
git rebase origin/master 

と私は両方とも「テストファイル」を追加したことを言って、競合を取得します。これは、私が元の/マスターから最後にリベースした後に行われたすべての変更を行うのではなく、元の/テスターを元/マスターから分割したので、それについて私は正しいですか? "正しい"ことをするためにブランチを更新するにはどうすればよいですか?

+0

[Adam mentionions](http://stackoverflow.com/a/9913900/456814)のように、説明したワークフローには何も問題はありませんが、プッシュすることはできませんでした'origin/tester'に' origin/master'がまだ持っていないコミットが含まれていない限り、force pushを指定せずに 'origin/tester'に移動します。あなたのログ履歴に関する情報を追加すると( '--graph --oneline'がうまくいくかもしれません)、さらに手伝ってくれるかもしれません。必要に応じて、機密情報をメッセージから削除することができます。 –

答えて

0

最初のリベース後、プッシュは機能しませんでした。強制オプション(-fまたは--force)が必要でした。

あなたが指定したステップでこの不正確さに基づいて、あなた自身の上でリベース作業を終えたように見えます。

関連する問題