我有一个在新子目录中添加现有仓库的文件...假设我有一个文件夹work
的仓库http://myrepo.git,我必须在文件夹subject
下添加新文件work
。我找到了解释如何将项目添加到repo的文档:
cd subject
git init
git add .
git commit
git remote add origin http://myrepo.git
git remote -v; git push origin master
但这似乎是为了将我的文件添加到myrepo.git
,我该如何保留
myrepo.git/work/subject
目录结构?
感谢
答案 0 :(得分:1)
您无法将空目录添加到git。
一般的解决方法是添加一个空文件.gitkeep
并将其添加到git:
touch work/subject/.gitkeep
git add work/subject/.gitkeep
git commit -am "Add directory subject"
这样一来,该目录就会存在,而且你知道一旦你在这个目录中有其他文件就可以删除它。
答案 1 :(得分:1)
我有一个在新子目录中添加文件到现有的repo ...
"主题"目录不为空,我有几个新文件
我认为你完全错了,没有必要创建一个新的git存储库并向其添加文件。相反,您可以将文件添加到原始仓库本身:
git clone myrepo.git
cd work
mkdir subject && cd subject && touch file1 file2 #touch is equivalent to new files added
git add . && git commit -m "some message"
git push origin master
以上内容应该将您的更改推送到远程,并且您可以清楚地看到,此过程中没有创建新的仓库。
答案 2 :(得分:0)
知道了,我的错误就是mu说的:试着用git init添加它作为新的repo ..
git clone myrepo.git
cd work && mkdir subject && cp myfiles to subject && cp subject
git add . && git commit -m "some message"
git push
这会将myfiles推入work / subject
下的myrepo.git