私がやりたいこと: (sshリモートアクセス可能な)大学のマシンで、gitソース管理下に置いたプロジェクトに取り組んでいます(git init
その後git commit -a
、すべての変更後、すべて正常に動作します)。今、私は自宅のプライベートマシンでそのプロジェクトに取り組みたいと思っています。gitは分散VCなので、簡単なはずですよね?
私はgitチュートリアルを読みました。これはgit pull
、自宅で変更を行うために大学で行うことを提案しています。自宅のマシンにリモートアクセスできないため、これは機能しません。だから家でやろうと思ったgit push
。それは機能しますが、非ベアリポジトリはプッシュ用に設計されていないためgit reset
、複雑です(後で大学で必要になるなど)。
質問1:セットアップにベアリポジトリを追加するよりも簡単な方法はありますか(つまり、(1)「メイン」ベアリポジトリ、(2)大学のワーキングコピー、(3)ホームワーキングコピーがあります) )?
<Rant>本当にそのセットアップが必要な場合は、SVNにとどまることができたでしょう。</ Rant>
質問2:そのセットアップが本当に必要な場合、どうすればそのベアリポジトリを作成し(おそらくgit clone --bare
)、それを「メイン」リポジトリにすることができます。つまり、そこgit push
に行くことになっている作業コピーを伝えることができます。
PS:ベア以外のリポジトリにプッシュできる受信後のフックが浮かんでいることは知っています。試してみましたが、大学のマシンのgitバージョンがかなり古く(1.5.5.6)、フックで使用されるいくつかのコマンドが欠落しているため、うまく機能しませんでした。更新はオプションではありません。とにかくサードパーティのスクリプトを使用しないソリューションをお勧めします。