0

そもそも、私はGitにかなり慣れていません。

リポジトリに呼び出されたデフォルトのブランチがあります。masterという新しいブランチを作成し、それにファイルをbugs追加しました。known_bugs.txt問題は、Gitがブランチに追加known_bugs.txtするだけでなく、ブランチ内のbugs他のすべてのファイルも表示することです。新しいブランチが作成されたときに、デフォルトのブランチから新しいブランチにファイルを単純にマージしない方法はありますか?masterbugs

よろしくお願いします:D

4

3 に答える 3

3

私もgitを初めて使用します。私はしばらくの間グーグルで検索し、3つの可能な解決策を見つけました。それがお役に立てば幸いです。ただし、おそらくこの方法でブランチを使用するべきではありません。

まず、新しいブランチを作成bugsしてこのブランチをチェックアウトし、ブランチからすべてのファイルを削除してから、master独自のファイルknownbugs.txtを作成してコミットすることができます。

git branch bugs
git checkout bugs
rm *
echo XXXX > knownbugs.txt
git commit -a -m "New branch with file knownbugs.txt"

次に、空の初期コミットを作成し、そこからブランチを派生させることができます。

git commit --allow-empty 

仕事をします。

詳細:gitで空のプロジェクトにブランチを作成する

第三に、git内の参照とインデックスを手動で管理できます。

git symbolic-ref HEAD refs/heads/bugs
rm .git/index
echo XXX > knownbugs.txt; git add knownbugs; git commit -m
git checkout -f master
git checkout bugs

詳細については、祖先なしでgitブランチを作成するを参照してください。

于 2013-02-19T01:06:12.147 に答える
2

gitでブランチを作成すると、現在のコンテキストから作成されます。ブランチを作成するときにマスターにコミットしたものがない場合、新しく作成したブランチも空になります。ブランチ時にマスターにコミットされたファイルが2つある場合は、そのコミット(2ファイル)を取得して、新しく作成したブランチに移動します。

したがって、空のブランチを作成する場合は、いくつかのオプションがあります...

  • 単純:何かをコミットする前に、すべての空のブランチを作成します。
  • 中程度:ブランチを作成してチェックアウトしたらすぐに、すべてを削除(git rm)してから、ファイルを追加します。新しいブランチへの最初のコミットにより、すべてのファイルが削除および追加されます。
  • エキスパート:孤立フラグを使用して、親コミットのないブランチを作成してから、前述のようにすべてのファイルを削除します。

git checkout --orphan NEWBRANCH

(NEWBRANCHはブランチ名です)

git rm -rf .

(すべてのファイルを削除します)

于 2013-02-19T17:16:45.940 に答える
0

バグブランチをリベースして、マスターの最初から開始することができます。そうすれば、そのファイルは他のブランチに存在しなくなります。

于 2013-02-19T00:35:11.647 に答える