如何在没有git-clone的情况下获得git项目?
我想要开始使用git。我们的项目位于具有基础开发系统的目录中。我已经为自己创建了很棒的内容,但我无法将这些文件交给我的合作者。如何在没有git-clone的情况下获得git项目?
我们不能做一个git克隆,因为它必须克隆到一个空目录。
我试着在其中一个系统的dev目录中初始化一个仓库,向我的仓库添加一个远程,然后运行git-fetch。它做了大量的计算和下载,但最后,.git /结束了很多东西,但dev目录中的文件保持不变。 ls文件不显示任何内容。
我预计抓取拉下所有的文件。我在这里误解了什么?
git fetch
只会更新你的开发回购的远程命名空间。
它的工作树将保持不变(除了所有已有的遗留和私有文件外,它是“空的”)
你试过git pull
?
它将git获取和git merge
远程内容到您的主分支,同时填充您的工作树。
这样做!我以为我尝试了拉,但显然我没有。 – 2010-08-10 13:28:24
真的不清楚你在描述这个问题。你已经有git仓库设置?如果'是',那么你无法克隆的确切原因是什么?如果“否”,那么首先想到的,你需要做的是:
cd project/
git init
git add --all
git commit -m "Initial commit"
是的,我有自己的存储库,以及另一个开发系统上的(新/空)存储库,我尝试从中获取。 我无法从存储库执行git克隆的原因是由于原始开发人员设置项目的方式 - 这是一个大型的跨平台Linux构建环境。我们的项目文件与现有文件系统混合在一起。将克隆克隆到现有目录需要它为空;它不是(也不能没有很大的努力)为我们的系统。 – 2010-08-10 00:54:42
使用git-bundle
可以在归档中传输整个回购内容。
对于docs
一些工作流程需要一台机器上显影的一个或多个分支另一台机器上被复制,但两个机不能直接连接,因此,交互GIT中的协议(GIT, ssh,rsync,http)不能使用。这个命令提供了对git fetch和git pull的支持,方法是在源机器的存档中打包对象和引用,然后通过某种方式(例如,通过sneakernet)移动归档文件后,使用git fetch和git pull将这些文件导入到另一个存储库中, 。由于存储库之间不存在直接连接,因此用户必须为目标存储库持有的数据包指定基础:数据包假定基础中的所有对象都已存在于目标存储库中。
也许你可以克隆到一个空目录,然后复制所有其他的东西? – Cascabel 2010-08-10 13:06:37