1. ホーム
  2. git

[解決済み] Git: 追加とプッシュとコミット

2022-05-16 22:50:11

質問

git の違いは何ですか? add , pushcommit ?

SVN では "update" がものを「追加」し、commit が "push" をして同様に「追加」するため、少し混乱しています。

git の中には、すべて異なる機能があります。あなたの経験からの説明を期待しています。

どのように解決するのですか?

  1. git add 変更したファイルをキューに追加します に追加し、後でコミットするようにします。 . ファイルはコミットされません

  2. git commit は、追加されたファイルをコミットし、ログを含む新しいリビジョンを作成します... もし何もファイルを追加しなければ、git は何もコミットしません。両方のアクションを組み合わせるには git commit -a

  3. git push は、変更をリモートリポジトリにプッシュします。

この図は このgitチートシート を見ると、作業の流れがよくわかります。

git add が図にないのは、コミットする方法として提案されているのは、結合された git commit -a であるためですが、精神的には git add を変更ブロックに追加することで流れを理解することができます。

最後に、なぜ push が別のコマンドである理由は git の思想です。 git は分散型バージョン管理システムであり、ローカルの作業ディレクトリである があなたのリポジトリです! あなたがコミットしたすべての変更は、即座に反映され記録されます。 push は、作業が終わったときにリモートリポジトリ(他の人と共有する場合もあります)を更新するためだけに使われます。これは、ローカルで作業して変更を保存し(ネットワークのオーバーヘッドなしで)、コミットごとにではなく、更新したいときにだけ更新するためのすてきな方法です。これは間接的に、コミットやブランチなどがより簡単になり (なぜそうしないのでしょう? 何を犠牲にしているのでしょう?) 、リポジトリに手を加えることなく、より多くの保存ポイントにつながるのです。