[解決済み] Git: 追加とプッシュとコミット
質問
git の違いは何ですか?
add
,
push
と
commit
?
SVN では "update" がものを「追加」し、commit が "push" をして同様に「追加」するため、少し混乱しています。
git の中には、すべて異なる機能があります。あなたの経験からの説明を期待しています。
どのように解決するのですか?
-
git add
変更したファイルをキューに追加します に追加し、後でコミットするようにします。 . ファイルはコミットされません -
git commit
は、追加されたファイルをコミットし、ログを含む新しいリビジョンを作成します... もし何もファイルを追加しなければ、git は何もコミットしません。両方のアクションを組み合わせるにはgit commit -a
-
git push
は、変更をリモートリポジトリにプッシュします。
この図は このgitチートシート を見ると、作業の流れがよくわかります。
git add
が図にないのは、コミットする方法として提案されているのは、結合された
git commit -a
であるためですが、精神的には
git add
を変更ブロックに追加することで流れを理解することができます。
最後に、なぜ
push
が別のコマンドである理由は
git
の思想です。
git
は分散型バージョン管理システムであり、ローカルの作業ディレクトリである
は
があなたのリポジトリです! あなたがコミットしたすべての変更は、即座に反映され記録されます。
push
は、作業が終わったときにリモートリポジトリ(他の人と共有する場合もあります)を更新するためだけに使われます。これは、ローカルで作業して変更を保存し(ネットワークのオーバーヘッドなしで)、コミットごとにではなく、更新したいときにだけ更新するためのすてきな方法です。これは間接的に、コミットやブランチなどがより簡単になり (なぜそうしないのでしょう? 何を犠牲にしているのでしょう?) 、リポジトリに手を加えることなく、より多くの保存ポイントにつながるのです。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] 既存の、プッシュされていないコミットメッセージを修正するには?
-
[解決済み] Git リポジトリを以前のコミットに戻すにはどうすればよいですか?
-
[解決済み] 新しいローカルブランチをリモートの Git リポジトリにプッシュし、それを追跡するにはどうすればよいのでしょうか?
-
[解決済み] Git のリモートブランチを作成する方法を教えてください。
-
[解決済み] Git フェッチ リモートブランチ
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】git revert <hash> not allowed due to a merge but no -m option was given.
-
[解決済み】gitが「変更をコミットするか、マージする前にstashしてください」と言うのを解決するには?
-
[解決済み】git-mergeの-dry-runオプションはありますか?
-
[解決済み】ローカルに変更があるにもかかわらず、git pushが「すべて最新」と言う
-
[解決済み] git rebase fatal: 必要なリビジョンは1つです。
-
[解決済み】Git Extensions。Win32 エラー 487: cygwinのヒープ用に領域を確保できなかった、Win32エラー0
-
[解決済み] git が「Pull is not possible because you have unmerged files」と表示するのはなぜですか?
-
[解決済み] Git - node_modules フォルダをどこでも無視するようにしました。
-
[解決済み] git リモートリポジトリには、ローカルブランチにマージされていないコミットが含まれています。
-
[解決済み] git pull」と「git fetch」の違いは何ですか?