在同一系统上创建远程和本地git存储库?

时间:2014-10-11 08:39:17

标签: git git-push git-clone atlassian-sourcetree git-config

我遇到了麻烦。我想要做的是在本地创建一个中央git存储库,然后克隆它以制作一个工作副本。当我对克隆进行更改并推送更改时,我在SourcTree中没有出现任何错误,但更改不会被推送。我没有看到中央存储库的变化。

我在这个过程中遇到了各种错误,例如,SourceTree会抱怨它在中心存储库上执行git status

  

致命:此操作必须在工作树[重复]

中运行

我必须让我的中心存储库裸露,所以错误消失但仍无法使push工作。我不确定是什么导致了这个问题。我试验了一下但没有成功。这是可行的吗?我做了一些根本错误的事情。

(我不会在云上使用托管我的中央存储库,但我可以将它移到不同的PC上。但我真的想在我自己的系统上同时使用它(中心和工作副本))

2 个答案:

答案 0 :(得分:0)

Git愉快地支持你要做的事情。 按照这些,我希望你不会遇到任何问题:

  1. 使您的中央存储库裸露(必须)
  2. 列表项
  3. 在其他地方克隆此系统中央回购。克隆时使用绝对/相对路径中心,避免使用git://。
  4. 在当地做你的工作并推动裸露。
  5. 如果您想查看更改,git中存在某些限制,您无法解决这些问题。做裸机回购。因此,要查看更改,请执行git-log或在gitk或source tree中查看它。你会看到你的变化。 (或者你可以在推后克隆你的中心,它将推动你的推动)

答案 1 :(得分:0)

这就是我所做的,扩展了Mudassir的回答

  1. 创建Bare Git存储库(Bare必须)
  2.   

    git init --bare my-project.git

    1. 克隆此存储库,在根
    2. 之上执行此操作
        

      git clone myproject-git myproject.clone

      1. 在SourceTree中打开myproject.clone。使用任何文本编辑器向其添加文件并提交并推送。
      2. 请注意,Bare Repositories在SourceTree 中不起作用。如果你打开它们,你会收到一个错误。您可以放心地丢弃该错误。 For more info