私はGitHub for Windowsを介して Gitと対話していますが、これはリポジトリをGitHubにプッシュすることは決してないので面白いです。私はそれだけで取り組んでおり、私だけが使用することを意図しています。コミットが「非同期コミット」の下にリストされ、「履歴」の下に「コミットなし」と表示されていることに気付きました。「履歴」の下にリストされているコミットを除いてプッシュすることで何を達成できますか?
私はGitHub for Windowsを介して Gitと対話していますが、これはリポジトリをGitHubにプッシュすることは決してないので面白いです。私はそれだけで取り組んでおり、私だけが使用することを意図しています。コミットが「非同期コミット」の下にリストされ、「履歴」の下に「コミットなし」と表示されていることに気付きました。「履歴」の下にリストされているコミットを除いてプッシュすることで何を達成できますか?
回答:
あなたは技術的に正しいです-コードを誰とも共有していない場合、プッシュする必要はありません。
この場合も、ラップトップには最低価格の入札者が作成したハードドライブがあります。ハードドライブが故障する前に家が焼損する可能性があります。コードをリモートで確認することもできます。または、誰かと共有することもできます。
現在、Githubでは、すべてがパブリックであるか、プライベートリポジトリの料金を支払う必要があります。あなたが自分でそれを保持したいのであれば、あなたはgitを可能にするだけでなく、無料のプライベートリポジトリを備えたbitbucketをチェックアウトしたいかもしれません。
別のオプションは、リモートでバックアップされるgitリポジトリをどこかに保存することです。しかし、最近クラウドSCMプロバイダーを使用するだけでなく、これを行う利点はほとんどありません。
リポジトリにプッシュする別の理由があります(何らかの方法でローカルであっても):ワークステーション。
私はあなたのことは知りませんが、4台の異なるコンピューター(自宅に1台のPC、1台のラップトップ、1台のOffice PC、1台のOfficeノートパソコン)で作業しており、会社のサーバーで適切にセットアップされたGitサーバーに変更をプッシュすると、同期が高速になり、無痛。GitはDVCSであるため、その利点を活用しています。バックアップだけでなく、作業中のさまざまなコードベースをすべて簡単にマージ、チェック、分析できます。
たとえば、自宅のPCが「サーバー」(またはオリジン)であり、自宅のラップトップを持っている場合は、ローカルにすることができます。そうすれば、簡単に同期を保つことができます。
サイドノート:「Dropbox(またはその他の同期サービス)を使用したい」とよく言われます。Gitリポジトリには大量のオブジェクトがあるため、そのようなDropboxを使用するのはばかげています。それはオプションですが、良いものとは言いません。
分散SCMとして、gitは「作業コピーのスナップショットを作成する」(コミット)と「リポジトリを同期する」(プッシュ/プル/フェッチ)の概念を区別します。
リポジトリのローカルクローンが1つしかない場合、プッシュする意味はありません。しかし、githubのを、あなたが行う他のクローン(githubの上の1)を持っているし、変更をプッシュすると、少なくとも一つの利点があります:バックアップを。コンピューターが停止した場合でも、これまでのところすべてがgithubにプッシュされています。
もちろん、それはgithubの主な目的ではありません。githubはコードの共有を目的としているため、プロジェクトがgithubにある場合、他のユーザーがそこからプルしたり、プロジェクトのクローンを作成したり、クローンからのプルリクエストに対応したり、信頼できる人にリポジトリへのプッシュアクセスを許可したりすることもできます。
プッシュするもう1つの理由は、複数のローカルクローンを使用する場合です。これはさまざまなことに役立ちます。たとえば、2つの異なるブランチで同時に作業したい場合や、リポジトリで破壊的な操作を試してみたい場合などです。すべてが意図したとおりに機能する場合、変更されたクローンを保持します(または変更を元のリポジトリにプッシュします)が、事態が南に行けば、めちゃくちゃになったクローンを削除して元のクローンに戻すことができます(変更されていません) 。
デプロイメントにgitを使用する人もいます。実動バージョンもgitリポジトリであり、新しいバージョンへの更新はフェッチとチェックアウトの問題です(明らかに、ビルドステップが必要ない場合にのみ機能します)。真剣なものには必ずしもお勧めしませんが、小さなものにはシンプルで実用的なソリューションです。