git push没有将更改推送到存储库

时间:2013-08-15 17:46:27

标签: git

我是git的新手,并试图了解它的命令是什么,所以为此我在我的Windows系统中安装了git。

我通过运行命令“git init”将我的一个文件夹作为git存储库。这在该文件夹中创建了“.git”目录。

cd git-repo
git init

之后我尝试克隆该存储库,所以为此我创建了一个单独的文件夹并进入其中并运行"git clone ../git-repo"命令。这克隆了git-repo。

现在我在这个克隆文件夹中做了一些更改,并尝试使用命令将它提交到git-repo:

git add .
git commit -m "test commit"
git push origin branch1

但问题是推送的更改在git-repo中不可见。 请帮帮我。

由于

3 个答案:

答案 0 :(得分:1)

你正在推动一个非裸露的回购。根据你的git版本,这个(仍然)有效,但是对于新的gits,它将不再起作用。

你应该推送一个裸仓库(它可以像集中版本控制中的服务器一样运行),然后从那里拉,即间接转移。

详细了解裸露回购:http://gitolite.com/concepts/bare.html

答案 1 :(得分:1)

您在创建“远程”存储库时错过了一个选项。请尝试以下

  • 移至要用作远程git存储库的文件夹并发出命令:git init --bare--bare将存储库初始化为远程存储库,稍后您可以在其中推送
  • 移动到您要用作工作(或本地)存储库的任何文件夹并执行克隆:git clone /remote-repository
  • 现在您应该可以pushpull了。简单地说,git push应该有效。

我的个人建议是使用自定义remote,因为当您克隆存储库时,git将始终创建与分支origin关联的名为master的远程,这可能会变得混乱你在更多的存储库上工作。

答案 2 :(得分:0)

什么是branch1?也许原始仓库有master或其他分支签出。您必须在原始仓库中git checkout branch1才能看到这些更改。