私はshelve
Git の側面に非常に慣れていません。stash
未完成の仕事を片付けるために使用されている場合shelve
、それでは何ですか?何に使うの?
たとえば、プロジェクトの更新(VCSメニューから)
1つが得られます(アイデア2019.2)
shelve
bzrやhgなどと似ています。git相互運用パッケージを参照していますか?
私はshelve
Git の側面に非常に慣れていません。stash
未完成の仕事を片付けるために使用されている場合shelve
、それでは何ですか?何に使うの?
たとえば、プロジェクトの更新(VCSメニューから)
1つが得られます(アイデア2019.2)
shelve
bzrやhgなどと似ています。git相互運用パッケージを参照していますか?
回答:
git shelve
Gitには存在しません。
のみgit stash
:
ブランチの変更を分離するための2008年の古いプロジェクトgit shelveがありましたが、今日ではそれはあまり役に立ちません。
Intellij IDEAシェルフダイアログに記載されているように、「シェルビングおよびアンシェルビング」機能はVCS(バージョン管理システムツール)ではなくIDE自体にリンクされており、変更リストにまだコミットしていない保留中の変更を一時的に保存します。
ことに注意してくださいGitの2.13(Q2 2017年)以来、あなたは今、あまりにも個々のファイルを隠しておくことができます。
git stash && <your actual command> && git stash pop
が、それはひどいです。自動棚上げと適用は、必要なものにより近くなります。
JetBrains IDEをGitで使用する場合、「シェルフとアンシェルフに加えて、スタッシュとアンスタッシュのアクションがサポートされます。これらの機能には多くの共通点があります。主な違いはパッチの生成方法と適用方法にあります。Shelveは個々のファイルまたは束で操作できますStashは一度に変更されたファイルの束全体でしか動作しませんが、これらの違いの詳細を次に示します。」
git stash -p
両方が切り札です。残念ながら、コマンドラインでのみ。
他の場所で自分の変更を共有しない場合は、変更を隠しておくのではなく、棚に置きたいと思います。
スタッシングはgit機能であり、特定のファイルを選択したり、ファイル内の変更を行ったりすることはできません。シェルビングはそれを行うことができますが、これはIDE固有の機能であり、git機能ではありません。
ご覧のとおり、棚に含めるファイル/行を指定することができます。隠しておくことはできません。
IDEでシェルフを使用すると、変更が.gitフォルダーに保存されないため、パッチの移植性が制限される可能性があることに注意してください。
いくつかの役立つリンク:
shelve
gitコマンドではありません。この質問の背景は何ですか、これらの用語はどこから来ていますか?shelve
他のいくつかのツールに存在しますが、それはgitの一部ではありません。