GitとGitHubの基本を理解する[終了]


201

GitまたはGithubを使用する目的を完全には理解していません。あなたの変更を追跡するのに役立つことは知っています。他の人と共同作業をしている人にとっては便利ですが、私は誰とも共同作業をしていないので、これが私に役立つかどうかわかりません。

私は通常Webデザイナー/開発者として働いていますが、協力する必要はありません。私はGitですべてのリポジトリのブランチを作成、プッシュ、コミット、作成することを知っていますが...

  1. GitとGitHubの違いは何ですか?

  2. gitはすべてのリポジトリをローカル(ユーザーのマシン)とGitHubに保存していますか?

  3. GitHubなしでGitを使用できますか?はいの場合、GitHubを使用するメリットは何ですか?

  4. Gitは、Time Machineなどのバックアップシステムとどのように比較されますか?

  5. これは手動のプロセスですか?つまり、コミットしないと、変更の新しいバージョンが作成されませんか?

  6. コラボレーションしておらず、すでにバックアップシステムを使用している場合、なぜGitを使用するのですか?


多分それは誰かが違いを理解するのに役立ちます:pedrorijo.com/blog/git-init
pedrorijo91

回答:


254
  1. GitとGitHubの違いは何ですか?

    Gitはバージョン管理システムです。コードの一連のスナップショット(コミット)と考えてください。これらのスナップショットのパスが、作成された順序で表示されます。ブランチを作って実験し、撮ったスナップショットに戻ることができます。

    GitHubは、Gitリポジトリを公開して他のユーザーと共同作業できるWebページです。

  2. Gitはすべてのリポジトリをローカル(ユーザーのマシン内)およびGitHubに保存していますか?

    いいえ、ローカルのみです。GitHubの一部のブランチをプッシュ(公開)することを決定できます。

  3. GitHubなしでGitを使用できますか?はいの場合、GitHubを使用するメリットは何ですか?

    はい、GitHubを使用しない場合、Gitはローカルで実行されます。GitHubを使用する代わりに、DropboxでホストされているファイルでGitを実行することもできますが、GitHubは特にGit用に作成されたため、より効率的なサービスです。

  4. Gitは、Time Machineなどのバックアップシステムとどのように比較されますか?

    これは別のことです。Gitを使用すると、変更と開発プロセスを追跡できます。GitHubでGitを使用すると、効果的にバックアップになります。ただし、通常は常にGitHubにプッシュするわけではありません。その場合、問題が発生しても完全なバックアップはありません。Dropboxと同期しているフォルダーでgitを使用しています。

  5. これは手動のプロセスですか?つまり、コミットしないと、変更の新しいバージョンが作成されませんか?

    はい、コミットとプッシュはどちらも手動です。

  6. コラボレーションしておらず、すでにバックアップシステムを使用している場合、なぜGitを使用するのですか?

    • コミット間でエラーが発生した場合は、コマンドgit diffを使用して、現在のコードと最後に機能しているコミットとの違いを確認し、エラーの特定に役立てることができます。

    • 最後の作業中のコミットに戻ることもできます。

    • 変更を試したいが、うまくいくかどうかわからない場合。ブランチを作成して、コードの変更をテストします。正常に動作する場合は、メインブランチにマージします。そうでない場合は、ブランチを捨ててメインブランチに戻ります。

    • デバッグを行いました。コミットする前に、常に最後のコミットからの変更を確認してください。削除するのを忘れたデバッグ印刷ステートメントが表示されます。

gitimmersion.comを確認してください。


5
最後の段落のセクション1は本当に良い点です。またgit intersect、この目的のためのチェックアウト。

2
@ H2CO3どういう意味git bisectですか?
Simon Whitaker

1
@SimonWhitakerはい、それはタイプミスです。

47
  1. GitとGitHubの違いは何ですか?

    Linus Torvaldsがあなたを殺します。Gitは、彼が書いたバージョンマネージャプログラムの名前です。GitHubは、Gitで管理可能なソースコードリポジトリがあるWebサイトです。したがって、GitHubは元のGitツールとはまったく無関係です。

  2. gitはすべてのリポジトリをローカル(ユーザーのマシン)とGitHubに保存していますか?

    変更をコミットすると、ローカルに保存されます。次に、コミットをプッシュすると、リモートでコミットされます。

  3. GitHubなしでGitを使用できますか?はいの場合、GitHubを使用するメリットは何ですか?

    できますが、自分でgitサーバーを手動で設定したくないと思います。GitHubの利点?まあ、使いやすく、多くの人がそれを知っているので、他の人があなたのコードを見つけてフォロー/フォークして改善を加えることもできます。

  4. Gitは、Time Machineなどのバックアップシステムとどのように比較されますか?

    Gitは、ソースコード用に特別に設計および最適化されています。

  5. これは手動のプロセスですか?つまり、コミットしないと、変更の新しいバージョンが作成されませんか?

    丁度。

  6. コラボレーションしておらず、すでにバックアップシステムを使用している場合、なぜGitを使用するのですか?

    #4を参照してください。


5
実際、gitを完全にローカルで使用できます。githubを使用する唯一の理由は、ソースコードを公開することです。たとえばコラボレーションのために。したくない場合は、gitサーバーは必要ありません。
Davoud Taghawi-Nejad 2012

@ DavoudTaghawi-Nejadはい、しかしOPは「GitHubなし」を「特にGitHubなし」と呼んでいたと思います。また、#2から、ローカルでのみgitを使用できることは明らかだと思います。

4
@ DavoudTaghawi-Nejadコラボレーションではなく、バックアップとしてgithubを使用します。fire / etcコードがあれば安全です。
Thufir 2012

github follow and fork機能とは何ですか?
Mou

29
  1. GitとGitHubの違いは何ですか?

    Gitは分散バージョン管理システムです。通常、ローカルマシンのコマンドラインで実行されます。ファイルとそれらのファイルへの変更を「リポジトリ」(または「リポジトリ」)で追跡しますが、そうするように指示した場合のみです。(つまり、追跡するファイルと、変更の「スナップショット」をいつ取得するかを決定します。)

    対照的に、GitHubはGitリポジトリをオンラインで公開できるWebサイトであり、多くの理由で役立ちます(#3を参照)。

  2. Gitはすべてのリポジトリをローカル(ユーザーのマシン内)およびGitHubに保存していますか?

    Gitは、ローカルで実行してインターネットから切断し、変更をリモートシステム(GitHubなど)に「プッシュ」できるので、「集中型」ではなく「分散型」バージョン管理システムと呼ばれます。したがって、リポジトリの変更は、GitHubに手動で Gitにそれらの変更をプッシュするように指示したときにのみ表示されます。

  3. GitHubなしでGitを使用できますか?はいの場合、GitHubを使用するメリットは何ですか?

    はい、GitHubがなくてもGitを使用できます。Gitは実際に変更を追跡する「主力」プログラムですが、GitHubは単にリポジトリをホストしているだけです(Gitでは利用できない追加機能を提供します)。GitHubを使用する利点のいくつかを次に示します。

    • ファイルのバックアップを提供します。
    • リポジトリをナビゲートするための視覚的なインターフェースを提供します。
    • 他の人にあなたのリポジトリをナビゲートする方法を提供します。
    • これにより、リポジトリのコラボレーションが容易になります(たとえば、同じプロジェクトに複数の人が貢献する)。
    • 軽量の問題追跡システムを提供します。
  4. Gitは、Time Machineなどのバックアップシステムとどのように比較されますか?

    Gitはファイルをバックアップしますが、バックアップの内容とタイミングを従来のバックアップシステムよりも細かく制御できます。具体的には、変更のスナップショットを取得するたびに「コミット」します。そのコミットには、変更の説明とそれらの変更の行ごとの詳細の両方が含まれます。特定のファイルの変更履歴を行ごとのレベルで簡単に確認できるため、これはソースコードに最適です。

  5. これは手動のプロセスですか?つまり、コミットしないと、変更の新しいバージョンが作成されませんか?

    はい、これは手動プロセスです。

  6. コラボレーションしておらず、すでにバックアップシステムを使用している場合、なぜGitを使用するのですか?

    • Gitは強力な分岐システムを採用しており、複数の独立した開発ラインで同時に作業し、必要に応じてそれらの分岐をマージできます。
    • Gitを使用すると、ファイルの異なるバージョン間の行ごとの違いを表示できるため、トラブルシューティングが容易になります。
    • Gitはコミットのそれぞれを説明するように強制します。これにより、特定のファイルの特定の以前のバージョンを追跡することが非常に簡単になります(そして、場合によってはその以前のバージョンに戻すことができます)。
    • コードのヘルプが必要な場合は、Gitでコードを追跡してGitHubでホストすると、他の人がコードを簡単に見られるようになります。

Gitの使用を開始するには、便利なリファレンスガイドとして、オンラインブックのPro GitGitRefをお勧めします。GitHubを使い始めるにあたってGitHubのBootcampGitHubガイドが好きです。最後に、GitとGitHubを初心者に紹介する短いビデオシリーズを作成しました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.