1

Rails プロジェクトがあり、次の手順を実行しました。

  1. git commit -m "Format gemfile"git pushすべてがきれいであることを確認します。このコミットの ID は b24d101 です

  2. git checkout -b newbranch

  3. 新しいブランチで、ファイルを削除し、他の 2 つのファイルに変更を加え、他のいくつかのファイルを生成しました。

  4. git status2 つのファイルが変更され、1 つのファイルが削除され、いくつかのファイルが追跡されていません。ここまでは順調ですね。

  5. 問題に気付いたので、 を介して master ブランチに戻り、 を介しgit checkout masterて newbranch を削除しましたgit branch -d newbranch

  6. git statusまだ追跡されていないファイルがいくつかあることを示しています。

  7. 前回のコミットに戻ることにしました。

  8. git reset --hard b24d101

  9. git status現在、ファイルが削除または変更されていないことが示されています(実際、手動チェックの後にこれを確認できます。ステップ3から削除されたファイルがあり、ステップ3からの2つのファイルの編集はなくなりました)。ただし、これらの追跡されていないファイルがまだいくつかあります。私はそれらをしたくありません。これらのファイルが作成されたので、git はこれらのファイルを削除することになっていませんか?

PSこれらのファイルを手動で「クリーニング」する必要がありますか?

4

2 に答える 2

1

これが「PS」の質問に対する答えだと思います。新しいファイルがステージングまたはコミットされない限り、それらはどのブランチにも属さず、git はそれらを完全に無視します。それらを削除する場合は、手動で行う必要があります。

よろしく、 ウディ

于 2013-07-24T10:25:41.537 に答える
1

ステップ 3 で生成したファイルはコミットされていないため、git はそれらを追跡しませんでした。Git は追跡されていないファイルに触れることはありません。そのため、ブランチの削除に残されています。したがって、ブランチにいるときにそれらを追加または追跡しなかったため、「それらが新しいブランチで作成された」ことは問題ではありません。

ただし、それらをコミットした場合は、masterブランチに戻るとすぐに正しく削除されます。

于 2013-07-24T10:18:15.387 に答える