これは、規則、ベスト プラクティス、および/または個人的な好みに関する質問である可能性があります。
私は git noob であり、私の Web サイトのコードは共有する価値がないため、github などは使用していません。
git は中央リポジトリを必要としないことを知っていたので、私は考えました。私のワークステーションとサーバーは 2 つのノードであり、私のワークステーションからサーバーに変更をプッシュするだけです。
私が始めたとき、コードはサーバー上にしかなかったので、私は:
- サーバー上:
git init
- ワークステーション:
git clone me@myserver:path/to/repo
- 陽気に変更を行い、ローカルにコミットしました
- ワークステーション:
git push me@myserver:path/to/repo
奇妙な結果が得られました。ローカルに追加したファイルはサーバーに表示されましたが、既存のファイルへの変更は反映されませんでした。
次に、チェックアウトされたリモート ブランチへのプッシュに対する警告を読みました。したがって、新しいセットアップは次のとおりです。
- 裸のリポジトリ
git clone --bare
を作るために走った - サーバーに裸のリポジトリを置きます(
~/repos/mysite.git
-パブリックフォルダーではありません) - コードローカルと:
git push me@myserver:repos/mysite.git
- サーバー上:
git pull ~/repos/mysite.git
最新のものを取得するには
これは正しいですか?それは論理的ですか?それはあなたがすることですか?