私はGit初心者です。最近、Rails プロジェクトを Subversion から Git に移動しました。ここのチュートリアルに従いました: http://www.simplisticcomplexity.com/2008/03/05/cleanly-migrate-your-subversion-repository-to-a-git-repository/
また、unfuddle.com を使用してコードを保存しています。通勤電車の中で Mac ラップトップに変更を加えてから、次のコマンドを使用して、ネットワークに接続しているときにそれらを unfuddle にプッシュします。
git push unfuddle master
デプロイには Capistrano を使用し、マスター ブランチを使用して unfuddle リポジトリからコードをプルします。
最近、ラップトップで「git status」を実行すると、次のメッセージが表示されることに気付きました。
# On branch master
# Your branch is ahead of 'origin/master' by 11 commits.
#
nothing to commit (working directory clean)
そして、私はその理由について混乱しています。私のラップトップが起源だと思っていました...しかし、最初にSubversionからプルしたという事実またはUnfuddleにプッシュしたという事実が、メッセージが表示される原因であるかどうかはわかりません。どうやって:
- Git が「オリジン/マスター」と考える場所を調べますか?
- 他の場所にある場合、ラップトップを「オリジン/マスター」にするにはどうすればよいですか?
- このメッセージを取得して消えます。Git は何かに不満を持っていると思います。
私の Mac は Git バージョン 1.6.0.1 を実行しています。
git remote show origin
dbr の提案に従って実行すると、次のようになります。
~/Projects/GeekFor/geekfor 10:47 AM $ git remote show origin
fatal: '/Users/brian/Projects/GeekFor/gf/.git': unable to chdir or not a git archive
fatal: The remote end hung up unexpectedly
git remote -v
Aristotle Pagaltzis の提案に従って実行すると、次の結果が得られます。
~/Projects/GeekFor/geekfor 10:33 AM $ git remote -v
origin /Users/brian/Projects/GeekFor/gf/.git
unfuddle git@spilth.unfuddle.com:spilth/geekfor.git
興味深いことに、ディレクトリ内のプロジェクトに取り組んでいgeekfor
ますが、元はディレクトリ内のローカル マシンであると表示されgf
ます。gf
プロジェクトを Subversion から Git に変換するときに使用した一時ディレクトリであり、おそらく unfuddle をプッシュした場所だったと思います。次に、 unfuddle からgeekfor
ディレクトリに新しいコピーをチェックアウトしたと思います。
したがって、dbrのアドバイスに従って次のことを行う必要があるようです。
git remote rm origin
git remote add origin git@spilth.unfuddle.com:spilth/geekfor.git