2016-10-03 5 views
2

これはいくつかシンプルなようですが残念ですが、私はまだGITの周りに頭を浮かべています。私はすべてが大丈夫だと思った。私は、ブランチを作成し、編集を行い、マスターに再びマージします。GITのマージ後、私はまだ古い枝を持っています

もう一度私はチェックし、そこにまだ2つの古い枝があります。私はそれらを再びマージしようとしましたが、マージ後もまだそれらを見ます。私はこれを理解しようとしていましたが、できませんでした。ここでは、彼らはまだ、有効です:

マージツールで

enter image description here

それは、これらのブランチの両方のために「ノーが異なるコミット」と言います。 enter image description here

誰でもまだそこにいる理由と、それらを適切にマージする方法(または、それ以上表示されないようにする方法)について意見を提供することはできますか?私はこれを解決する前に私が仕事を失うかもしれないことを心配しています。

答えて

5

ブランチをマージした後、ブランチは削除されません。あなたは手動で行う必要があります:ブランチがマージされていない

git branch -d my_branch_name

場合、それはあなたが-Dの代わり-d使用することを促すメッセージが表示されます。

+0

/U/Zarwan、ありがとうございました。とても有難い。私はそれらを削除するか、「ちょうどの場合」のためにそれらを残すべきかという質問があると思いますか?親指の一般的なルールはありますか? – robster

+1

通常は、マージ後に削除します。プルリクエストをマージすると、GitHubから実際にメッセージが表示されます。コミットをいつでも元に戻すことができるので、安全です。 @robster – Zarwan

-1

まさにGitのマージは、あなたのブランチを別のブランチにマージすることを意味します。

gitがyour_branchマスター

あなたのブランチを削除しないでください。このcommandeに合流します。だからあなたの枝を削除する。あなたが使用します。

gitのブランチ-D

https://git-scm.com/docs/git-merge

+0

'-D'はここで上書きしてはならないサニティチェックを無効にします。 Zarwanの答えのように '-d'を使います。 – hvd

2

枝がちょうどポインタあるyour_branchを特定することを約束します。あなたが望むだけ多くを持つことができますし、それらをマージすることは確かにそれらを削除しません。マージするのはコミットを削除しないのと同じです。それは実際にいくつかのプロジェクトによって選択された開発戦略、または十分近いものです(123)。これらの文書では、複数のブランチが並行して実行され、定期的に一緒にマージされます。あなたのブランチで作業して行われており、正常にマージしたら@Zarwanが指摘したように

、あなたは

git branch -d branch_name 

でそれを削除することができます。ここで-Dを直接使用すると、ブランチが正常にマージされなかったかどうかを確認するプロンプトが表示されないため、危険です。したがって、まれにある場合を除いて-dを使用することをお勧めします。

あなたは遠いブランチについて話している場合は、それを削除する正しい方法は、(このトピックに専用の他の多くのドキュメントページがある)を実行することです:

git push remote_name :branch_name 

本質的のbranch_nameに空のオブジェクトをプッシュremote_name(フォームをクローンした場合はおそらくorigin)。

+0

すばらしい説明/ u/MayeuICありがとうございます。非常に感謝しています。私はそれを削除しましたマスターとしては、私が望むように、今から私はそれをきちんと維持するために正しく削除されます。もう一度、ありがとう。 – robster

0
  1. git checkout master
  2. git branch -d *branchname*
関連する問題