2017-10-20 27 views
0

2つの異なるステージングサーバーを使用してプロジェクトを作成しています。現在、このプロジェクトには2つのブランチがあります。私の質問は、進行状況のためにコードが最初のブランチにコミットされていない間に別のブランチに切り替える方法です。その間、別の支店で変更する作業がある場合、どのように作業中に切り替えることが可能ですか?前もって感謝します。Visual Studio TFSで同じリポジトリの別のブランチを切り替える方法

答えて

0

ディランが言ったようにあなたはgit stashを使用することができますが、それはあなたが望むときにいつでもコミットできることも念頭に置いて価値があります。そのコミットをすぐにリモートにプッシュする必要はありません。

そのブランチに戻ったら、何をしていたのかを完了して、commit --amendを使用して、直前のコミットの内容と直前のコミットの内容を結合することができます。あるいは、正常にコミットし続け、インタラクティブなrebaseを実行してから、「作業中」を押すことができます。

0

はい、各ブランチにコミットされていない作業がある場合は、ブランチを切り替えることができます。

注意すべきことは、2つのブランチで両方の作業を隠している場合は、どの隠し作業を適用するのかを気付く必要があります。以下のような詳細:

masterブランチで未完成の仕事があるとしますが、devブランチに切り替える必要があります。次にgit stashを使用して、コミットされていない作業をmasterブランチに格納することができます。そしてとしてスタック(git stash list)のアイテム:

[email protected]{0} WIP on master: sha-1 message 

次にあなたがdevブランチ(git checkout dev)に切り替えて、変更を行うことができます。 devブランチでコミットされていない作業を維持しながら、masterブランチに戻る必要がある場合。そして、あなたはまたdevブランチの変更を保存するためにgit stashを使用することができ、スタック(git stash list)は次のようになります。

[email protected]{0} WIP on dev: sha-1 message 
[email protected]{1} WIP on master: sha-1 message 

は今、2つのスタッシュの作品があります

  • あなたが未完成を継続したい場合はmaster支店で作業する場合は、[email protected]{1}git stash apply [email protected]{1}で適用する必要があります。
  • dev支店で未完成の作業を続行する場合は、[email protected]{0}git stash apply [email protected]{0}を適用する必要があります。 git stash applyデフォルトは最新の作業を適用するので、ブランチの変更を適用するにはgit stash applyを使用することもできます。

git stashの詳細は、stashing in git bookを参照してください。

+0

ありがとう@マリナ、私はこれを将来試みます。現在、単一の支店で作業が行われています。再度、感謝します。 –

関連する問題