2

ブランチ全体をチェックアウトしたいのですが、そのブランチの特定のディレクトリ内でのみ作業します。したがって、ツリー全体に「飛び込み」、選択したサブディレクトリのみを作業ツリーに反映させたいと思います。例えば:

"master" tree
  dir1/
    file1
    file2
  dir2/
    file3

work-dir tree
  .git
  file1
  file2

私の推測では、次のようにします。

git checkout master:dir1/

ただし、それは機能せず、次のエラーが報告されます。

fatal: Cannot switch branch to a non-commit 'master:dir1/'

これは可能ですか?

注:レポを無関係な部分にスライスしたくないので、サブモジュールを使用したくありません。私の知る限り、サブツリーのマージは、構造は似ているが履歴が異なる 2 つの別個のディレクトリを同期するのに役立つだけです。リポジトリ内の元のオブジェクトを変更し、それらを前後にマージしてすべての履歴を保持できるようにしたいと考えています。

4

1 に答える 1

0

不可能です。ただし、使用することはできますがcd dir1、git はそこから引き続き機能するため、git add file1代わりにgit add dir1/file1etcを使用できます。

于 2013-08-07T11:44:40.897 に答える