5

重複した質問かもしれませんが、既存の質問から回答を見つけようとしましたが失敗しました。

次のコマンドを使用して、サーバー上に git リポジトリを作成しました。

mkdir gitrepo
cd gitrepo
git init

次に、別のマシンからこのリポジトリにファイルをプッシュしようとしましたが、失敗しました。

git init
git clone user@server:~/gitrepo/.git
cd gitrepo
touch test
git add test
git commit -a

今のところ、エラーは発生していません。変更をサーバーにプッシュしようとすると、次のエラーが発生します。

>git push
No refs in common and none specified; doing nothing.
Perhaps you should specify a branch such as 'master'.
fatal: The remote end hung up unexpectedly
error: failed to push some refs to 'user@server:~/gitrepo/.git'

以前にこの問題に遭遇した人はいますか?

非ベアリポジトリとベアリポジトリの違いをよく説明しているブログを見つけました。http://www.bitflop.com/document/111 同じ問題を抱えている人は参考にしてみてください。

4

3 に答える 3

6

git push [remote-name] [branch-name]. 例えばgit push origin master

于 2012-05-24T15:36:07.283 に答える
4

最初のマシンで、非ベアリポジトリ、または作業コピーを持つリポジトリを作成しました。ベア以外のレポにプッシュすると、少しエキサイティングになる可能性があるため、それが実際に必要なものであることを確認してください。

2番目のマシンでは、現在のディレクトリ()に新しいリポジトリを作成し、2番目のリポジトリとしてサブディレクトリにgit init複製しました。gitrepo繰り返しますが、それは問題ありません。それがあなたが望んでいたものであることを確認してください。

これは、最初のマシンのベアリポジトリと2番目のマシンの1つのリポジトリでどのように機能するかを示しています。

最初のマシン:

git init --bare gitrepo.git

2台目のマシン:

git clone user@server:~/gitrepo.git
cd gitrepo
touch test
git add test
git commit -a

# '-u' tells git to track the remote master branch with your local master branch
git push -u origin master
于 2012-05-24T15:43:48.023 に答える