現在のフォルダとそのサブフォルダの変更のみを変更しておきたいと思います。 どうすれば実現できますか?現在のフォルダのstashの変更を行う方法
私は明白なアプローチ - git stash .
を試しましたが、うまくいかないようです。
私は一時的なコミットを作成して後で削除することができますが、git stash
が特定のフォルダを隠すことをサポートしているかどうかを知りたいと思います。
現在のフォルダとそのサブフォルダの変更のみを変更しておきたいと思います。 どうすれば実現できますか?現在のフォルダのstashの変更を行う方法
私は明白なアプローチ - git stash .
を試しましたが、うまくいかないようです。
私は一時的なコミットを作成して後で削除することができますが、git stash
が特定のフォルダを隠すことをサポートしているかどうかを知りたいと思います。
git stash
では、1つのコマンドで部分的なディレクトリを保存することはできませんが、いくつかの選択肢があります。
git stash -p
を使用すると、隠したい差分のみを選択できます。
git stash -p
の出力が大きい場合や、スクリプト可能なソリューションが必要な場合や、一時的なコミットを作成しても構わない場合は、サブディレクトリ内の変更以外はすべてコミットを作成してから、コミットを巻き戻します。コードでは:
git add -u :/ # equivalent to (cd reporoot && git add -u) without changing $PWD
git reset HEAD .
git commit -m "tmp"
git stash # this will stash only the files in the current dir
git reset HEAD~
これはあなたのために働く必要があります。
cd <repo_root>
git add . # add all changed files to index
cd my_folder
git reset . # except for ones you want to stash
git stash -k # stash only files not in index
git reset # remove all changed files from index
基本的に、それはすべてあなたが隠したいフォルダ(またはファイル)を除いて、インデックスにファイルを変更し追加されます。次に、-k
(--keep-index
)を使用してそれらを隠します。最後に、インデックスを開始した場所に戻します。
これは実際には別のことを行います:' git stash -k 'はインデックスをそのまま残すので、インデックスの変更は削除されませんが、新しい隠しはインデックス**からの変更**とそれに含まれていない**の両方を持つので、"フルいずれにしても隠れている。 –
SourceTreeやTortoiseGitのようなGUI gitインターフェースをチェックアウトすることができます。私が個人的に亀に行くのは、多くのコマンドラインコマンドを実行しようとするよりはるかに高速です。
あなたは私がターミナルで働いているのを見たことがありません...私は本当に速く働きます – stdcall
エラーは何ですか? – Shobit
@Shobit 'git stash'コマンドのヘルプセクションが表示されます – stdcall
できません。 'git stash'は作業ツリーにコミットされていない変更を保存します。 –