Git 作業ディレクトリを変更する 質問する

Git 作業ディレクトリを変更する 質問する

Git リポジトリで作業したいのですが、作業ツリーはリモートである必要があります。たとえば、プロジェクトが 内に保存され~/projectproject.git内に保存されている場合です~/git/project.git

config 経由で作業ツリーを変更した内容:

worktree=/Users/myuser/project

コミットして差分を表示することはできますが、実行しようとするとgit stashエラーが発生しました:

致命的: 作業ツリーがないと /usr/libexec/git-core/git-stash は使用できません。

作業ツリーから離れたディレクトリを保存するにはどうすればよいでしょうか.git? また、なぜこのエラーが発生するのでしょうか?

git config --get core.worktree正しい作業ディレクトリを返します。

ベストアンサー1

以下の方法が機能するようです。必要に応じて調整してください。

mkdir git
mkdir work
git --git-dir git/test --work-tree work/test init
mkdir work/test
echo -n foo > work/test/foo.txt
git --git-dir git/test status
git --git-dir git/test add foo.txt
git --git-dir git/test commit -m 'commit 1'

--work-tree編集:リポジトリが初期化された後は、その値が に保存されるため、指定する必要がないことに注意してくださいgit/test/config

work/test に cd してそこからコミットすることもできます:

cd work/test
echo -n bar > bar.txt
git --git-dir ../../git/test status
git --git-dir ../../git/test add .
git --git-dir ../../git/test commit -m 'commit 2'

--git-dir次に、またはに絶対パスを使用しますGIT_DIR

おすすめ記事