如何推送到远程存储库中的特定文件夹?我在本地C盘上有以下结构:
myfolder/
.git
folder1
folder2
folder3
folder4
.gitignore
我在此文件夹中执行了git init
命令。之后我做了git add .
然后git commit -m "My first commit"
现在我想将它推送到包含类似结构的VSTS 远程存储库:
https://helloworld.visualstudio.com/VSTS_folder/_git/VSTS_folder
VSTS_folder/
greenFolder
redFolder
blueFolder
blackFolder
yellowFolder
.gitignore
README.md
其中 VSTS_folder 是存储库的名称。 greenFolder , redFolder 和 yellowFolder 已经有了一些代码。我想做的是将我的本地内容推送到 blackFolder 远程文件夹,该文件夹为空。我试图避免弄乱回购并将我的东西推到根。我正在使用git remote add origin https://helloworld.visualstudio.com/VSTS_folder/_git/VSTS_folder/blackFolder
,但这不起作用。实现这个目的的git命令是什么?谢谢。
答案 0 :(得分:2)
这不是Git的工作方式。您有一个名为VSTS_folder
的存储库。创建该repo的人并不了解Git存储库是什么。
您需要克隆存储库,它将为您提供整个存储库的副本。然后,您可以添加其他代码。
如果所有这些文件夹都包含完全独立的项目,它们之间没有任何共享,那么您应该考虑将它们拆分为单独的存储库。
您也可以坐下来阅读Git教程,以便更好地理解这些概念。
答案 1 :(得分:1)
对于Git版本控制系统,它通过分支(而不是作为svn VCS的文件夹)将更改推送到远程仓库。
所以你需要将本地内容移动到blackFolder
,并从远程仓库(VSTS git repo)提取更改,最后将分支推送到VSTS git repo 。
详细步骤如下:
# In your local git repo
rm -Rf .git #it's uncessary to commit at first in your local repo
git init
git remote add origin https://helloworld.visualstudio.com/VSTS_folder/_git/VSTS_folder -f
mkdir blackFolder
mv * blackFolder
mv .gitignore blackFolder
git pull origin master
git add .
git commit -m 'add local stuff to remote repo blackFolder'
git push -u origin master
现在本地的东西被推送到blackFolder
下的VSTS git仓库。
答案 2 :(得分:0)
git add .\<folder name>
git push
这应该是您所需要的。我刚刚做到了