2011-09-14 7 views
2

私はシンプルなgit pushコマンドを使用して(ほぼ)すべてのブランチをプッシュし続けていきたいと思いますが、私は世界の残りの部分とそれらを共有することなく、ローカルのGitに維持できるようにしたいと思いますいくつかあります。私はローカルに維持していますGit:1つのブランチをプッシュから除外するにはどうしたらいいですか?

物事がへのパブリックファイル -hence プライベートな変更を含め、私がサーバーにプッシュされない適切な名前の枝に秘密のものを維持したいと思います。これは事ですか?

答えて

5

だけprivateのようないくつかの名前空間にブランチを作成 - git checkout -b private/mybranch。その名前空間がリモートリポジトリに存在していない限り、その名前空間内のブランチはプッシュされません。git push

また、明示的にプッシュするのを防ぐには、存在しないリモートのものをbranch.<name>.remoteに設定します。

+0

ありがとう、それはまさにそれでした!よくほとんど。私はいくつかのポイントで_all_ブランチをプッシュするようgitを構成しました。これは覚えていないので、私はそれをオフにする余分なステップをとらなくてはなりませんでしたが、今はすべてが設定されています。 – Eris

1

一度に複数のブランチをプッシュする唯一の方法は、push.default = matching、described asを使用することです。「一致するすべてのブランチをプッシュします。両端に同じ名前のブランチがすべて一致すると見なされます。それはデフォルトの設定なので、慣れているかもしれません。あなたが押しているリモートに存在しないものに名前を付けることで、プッシュされていないブランチを持つことができます。

+0

私はそれが「念のため」セーフティネットを提供することにより、さらに進んでいるので、他の答えを受け入れたが、 'push.default'を指摘してくれてありがとう!もし私が複数のものを受け入れることができるなら、私はこの答えを完全に受け入れるだろう。 C: – Eris

関連する問題