Git Stash一時変更の保存
1954 ワード
git stash:現在のワークスペースの内容をバックアップし、最近のコミットから関連内容を読み出し、ワークスペースが前回コミットした内容と一致することを保証します.同時に、現在のワークスペースの内容をGitスタックに保存します.git stash pop:Gitスタックから最近保存したコンテンツを読み出し、ワークスペースの関連コンテンツを復元します.複数のStashのコンテンツが存在する可能性があるため、popはスタックで管理され、最近のstashからコンテンツが読み込まれ、復元されます.git stash list:Gitスタック内のすべてのバックアップを表示し、このリストを使用してその場所からのリカバリを決定できます.git stash clear:Gitスタックを空にします.gitgなどのグラフィックスツールを使用すると、元のstashのノードが消えていることがわかります.
ちょぞう
複雑な仕事をしていると、現在の仕事とは関係ないが嫌なbugを見つけました.このとき、バグを修復してから手元の作業をしたい場合はgit stashで現在の作業状態を保存し、バグを修復した後、「逆貯蔵」(unstash)操作を実行すれば、前の作業に戻ることができます.
上記のコマンドは、ローカル変更をストレージに保存し、作業ディレクトリとインデックスの内容をすべてリセットし、現在のブランチの最後のコミット時の状態に戻ります.
修復作業を始めることができます
バグを修復したらgit stash applyで以前の作業状態に戻ることができます.
ちょぞうキュー
「git stash」コマンドを複数回使用することもでき、実行するたびに現在の変更に対する「貯蔵」(stash)を貯蔵キューに追加します.「git stash list」コマンドを使用して、保存した「貯蔵」(stashes)を表示します.
キュー内の任意の「格納」(stashes)は、「git stash apply stash@{1}」のようなコマンドで使用することができる.git stash clear'はこのキューを空にするために使用されます.
ちょぞう
複雑な仕事をしていると、現在の仕事とは関係ないが嫌なbugを見つけました.このとき、バグを修復してから手元の作業をしたい場合はgit stashで現在の作業状態を保存し、バグを修復した後、「逆貯蔵」(unstash)操作を実行すれば、前の作業に戻ることができます.
$ git stash "work in progress for foo feature"
上記のコマンドは、ローカル変更をストレージに保存し、作業ディレクトリとインデックスの内容をすべてリセットし、現在のブランチの最後のコミット時の状態に戻ります.
修復作業を始めることができます
... edit and test ...
$ git commit -a -m "blorpl: typofix"
バグを修復したらgit stash applyで以前の作業状態に戻ることができます.
$ git stash apply
ちょぞうキュー
「git stash」コマンドを複数回使用することもでき、実行するたびに現在の変更に対する「貯蔵」(stash)を貯蔵キューに追加します.「git stash list」コマンドを使用して、保存した「貯蔵」(stashes)を表示します.
$>git stash list
stash@{0}: WIP on book: 51bea1d... fixed images
stash@{1}: WIP on master: 9705ae6... changed the browse code to the official repo
キュー内の任意の「格納」(stashes)は、「git stash apply stash@{1}」のようなコマンドで使用することができる.git stash clear'はこのキューを空にするために使用されます.