どのように私は私が離れて隠しておくものとパッチをフォーマットすることができます

StackOverflow https://stackoverflow.com/questions/2160638

  •  23-09-2019
  •  | 
  •  

質問

gitので、私は私の変更を離れて隠しておきます。それは私が離れて隠しておくものとパッチを作成できることは可能ですか?そして、いくつかの他のリポジトリにそのパッチを適用します(私の同僚の)?

私は「-1 Gitのフォーマットパッチ」を知っているが、私はそれは私が犯した何のためにあると思います。しかし、私は、変更のために同じものを探しています私は離れて隠し?

そして、どのように私は他のリポジトリにパッチを適用することができますか?

役に立ちましたか?

解決

確かに、 git stash show にこれをサポートしています:

git stash show -p

他のヒント

この答えは、パッチを保存し、あなたがそれを使用したい場所にそれを適用するの両方に関する情報を提供しています。

ファイルに出力を隠しておくために、

 git stash show -p --color=never > my-patch-name.patch

パッチルックスの良いことを確認します:

git apply --stat my-patch-name.patch

エラーを確認していない。

git apply --check my-patch-name.patch

タグのパッチを適用します
git apply my-patch-name.patch

使用

$> git stash list
stash@{0}: WIP on master: 84fx31c Merged with change to /public/
stash@{1}: WIP on master: 463yf85 FlupResource: also takes json as a query parameter

あなたの最近隠しもののリストを取得します。 Gitは実際にあなたが隠したときにオブジェクトをコミット作成します。

彼らは、他のすべてのようにコミットしています。あなたは支店でそれらをチェックアウトすることができます:

$> git checkout -b with_stash stash@{0}

あなたは、このブランチを公開することができますし、同僚が合併またはそのコミットチェリー選ぶことができます。

ソリューションは、バイナリデータでは動作しません以上。 そのため、次の追加サポート:

git stash show stash@{0} -p --binary

の編集

注:私は上記の回答にコメントを追加したかったが、私の評判は十分ではありません。

私は、これは最近、Gitリポジトリからudpatesの一つであるかもしれないと考えています。あなたは、それ以上離れて隠し変更にパッチを適用する必要はありません。あなただけの別のブランチにご隠し変更を適用することができます。

あなたはスタッシュと呼ばれ、いくつかの変更を離れて隠してきた分岐Aに言う@ {1}。

あなたは今、あなただけ行うことができます分岐Bに切り替えます:

$git stash apply stash@{1}

これは分岐Bにあなたの分岐Aの変更を適用します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top