以下是名为“Code”的目录的目录结构。
Directory of C:\Name\Code
06/23/2016 12:15 PM <DIR> .
06/23/2016 12:15 PM <DIR> ..
06/23/2016 12:16 PM <DIR> Cpp
06/15/2016 06:49 PM <DIR> Java
06/22/2016 04:19 PM <DIR> Python
06/23/2016 12:17 PM <DIR> OtherStuffs
我的Git帐户有Cpp和Java存储库。我曾经单独去Cpp和Java目录并将其提交给Git。因此,Cpp和Java中的所有内容都会提交给我的Git存储库Cpp和Java。现在我添加了更多目录。我可以通过在每个目录上单独执行“git init”将这些目录同步到Git。
是否有更简单的方法将我的父目录“Code”中的所有目录推送到git而不创建名为Code的存储库?
我不想在我的Git存储库中创建父目录“Code”。我只想将所有子目录推送到Git中相应的子目录。像,
cd Code
git init
git add --all
git commit -m "Pushing everything inside Code"
git remote add origin https://... // Where should I make this point to ? I do not have "Code" repository in my Git
git push origin master
答案 0 :(得分:1)
问题是您的Code
存储库未初始化为git,也未与存储库链接。因此,实际上不可能只从代码存储库中键入git push
并期望它推送它的子目录。
我建议你做的最好的事情是设置一个bash(或zsh,取决于你使用的是什么)别名cd
进入每个目录并单独推送。
alias gpa='cd ~/path/to/Code/Java && git add . && git commit -m "autocommit" && git push -u origin master && cd ~/path/to/Code/Cpp && git add .
...并以&& cd ~/path/to/code
然而,git
的要点是能够进行原子提交并确切地知道正在改变的内容 - 因此,确实没有理由去做你正在尝试做的事情。 。我会继续像往常一样使用您的流程 - 除非您真的不需要为每个不同的文件夹设置单独的存储库。简单地拥有Code
回购会不会更有意义吗?