2

最近、コミットを1つだけ実行しましたが、なぜ3つのコミットが表示されるのかわかりません。

これが私が最近したことです:

  1. GitHubに新しいリポジトリを作成しました。1つとファイルREADMEで初期化しました。(GitHubが私に代わってコミットしたことを理解しているので、これが私の最初の失われたコミットです。).gitignore
    • addedcommitedファイル。
    • しましたgit remote add origin git@github.com:me/repo.git
    • GitHubから変更を取得するために行いgit pull origin masterました(READMEおよび.gitignore)
    • やりましたgit push

私の質問は次のとおりです。

  1. 私はそのようなことを何もしていませんgit merge。なぜ私の3番目のコミットが「github.com:me/repoのブランチ'マスター'をマージする」と言うのですか?カーテンの後ろで何が起こっているのですか?
  2. 私は最初の2つのコミット(私が行ったコミットと、リポジトリの初期化時にGitHubが行ったコミット)のみを期待していました。この3番目はどこから来たのですか?これらのタイプのコミットを取り除くことはできますか?

これに関するヒントはありますか?

4

2 に答える 2

4

git pullのドキュメントから:

リモートリポジトリからの変更を現在のブランチに組み込みます。デフォルトモードでは、gitpullはgitfetchの省略形であり、その後にgitmergeFETCH_HEADが続きます。

つまり、実際にマージを実行しました

于 2013-01-29T13:15:52.283 に答える
0

プルを実行するときにマージをコミットしないようにするには、実行する必要がありますgit pull --rebase origin master。これにより、変更が移動され、マージは発生しません。

http://gitready.com/advanced/2009/02/11/pull-with-rebase.html

于 2013-01-30T02:12:26.890 に答える