リモートブランチが削除されたオリジンからフェッチしますか?


回答:


810

次のことを行う必要があります

git fetch -p

これにより、リモートブランチのローカルデータベースが更新されます。


1
どうもありがとうございました。以前にそれらのブランチを手動で削除しました。
マクシムドミトリエフ

4
何らかの理由で、あなたのコマンドは、仕事をしませんでしたが、これが私の中に存在しないリモートブランチのためにしたoriginフォーク: git fetch -p origin 私はそれからでした git branch -r 、存在しないリモートブランチはもはや現れました。
oldfartdeveloper 2013

11
完全を期すgit remote prune originために、それはそれぞれgit pull --prunestackoverflow.com / a / 6127884/94687およびstackoverflow.com/a/17983126/94687で言及されているものと同じで類似している必要があります。
imz-Ivan Zakharyaschev 2015

6
私がこれをするとき、みんなはそれを言っ[deleted] (none) -> origin/ < branch name >て、ブランチがまだローカルレポに表示されている理由は何ですか?
Buddhi741

4
ブランチが削除されたというメッセージが表示されますが、実行するとgit branchまだ削除されたと思われるブランチが表示されます。
sdfsdf 2018

91

http://www.gitguys.com/topics/adding-and-removing-remote-branches/から

誰かがリモートリポジトリからブランチを削除した後、ユーザーがgit pullまたはgit fetchを実行しても、gitはローカルリポジトリブランチを自動的に削除しません。ただし、ユーザーがリモートリポジトリで削除されたすべての追跡ブランチをローカルリポジトリから削除する場合は、次のように入力できます。

git remote prune origin

注として、からの-pパラメータはgit fetch -p実際には「プルーン」を意味します。
どちらの方法を選択しても、存在しないリモートブランチはローカルリポジトリから削除されます。


新しいものを取得しないので、私はこれが好きです。
Marek R

30

次のことを行う必要があります

git fetch -p

ブランチリストを同期するため。gitのマニュアルは言います

-p--prune
フェッチした後、リモートに存在しないリモート追跡参照を削除します。デフォルトのタグの自動フォローまたは--tagsオプションのためにタグがフェッチされた場合、タグはプルーニングの対象になりません。ただし、明示的なrefspecによってタグがフェッチされた場合(コマンドラインまたはリモート構成で、たとえば、リモートが--mirrorオプションで複製された場合など)、タグもプルーニングの対象になります。

個人的git fetch origin -p --progressには進行状況を表示するので使いたいです。



6

に関してはgit fetch -p、その動作はGit 1.9で変更され、Git 2.9.x / 2.10のみがそれを反映しています。

Jeff King(によるコミット9e70233(2016年6月13日)を参照してください。(合併によりJunio C浜野- -1c22105コミットし、2016年7月6日)をpeff
gitster

fetch:フェッチする前にプルーニングが発生することを文書化

これは10a6cc8fetch --prune:フェッチする前にプルーンを実行、2014-01-02)で変更されましたが、その議論の誰もが「後」を明示的にアドバタイズしていることに気付いていないようです。

したがって、ドキュメントには次のように記載されています:

フェッチするに、リモートに存在しないリモート追跡参照を削除します

その理由は:

frotz/nitfol以前のフェッチからの「」という名前のリモート追跡ブランチがあり、アップストリームに「frotz」というブランチがある場合、フェッチは「frotz/nitfol」を含む「git fetch --prune」をアップストリームから削除できません。gitは、ユーザーに「git remote prune」を使用して問題を修正するよう通知します。

fetch --pruneフェッチ操作の前にプルーニング操作を移動して、「」の動作を変更します。このように、競合をユーザーに警告するのではなく、自動的に修正します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.