继上个vscode图形化使用Git管理之后,发现日常工作有一种pipe不太灵,存在问题:
- git clone别人的仓库(下来的最外层目录先叫“工程目录”);
- 在工程目录下,修改代码;
- git clone自己远程创建的仓库(eg. gitee);
- cp -r 别人工程目录 自己工程目录;
- 自己的工程目录下查看:已发生文件的增添。
但这时,直接使用vs code的图形化界面push的话,会push到别人远程仓库(git push origin master -v),即使我选中了我的仓库。
改正办法(先看看纯命令操作如何力挽狂澜:)
- 修改远程仓库:
git remote set-url origin myrep.git
- 上传代码的基本操作:
git add .
git commit -m "First commit"
- 强制推送
git push --force origin master -v
这里其实想回答上述问题,因为咱们的cp -r会把别人仓库的提交信息一股脑的搬到我们的“本地仓库”中,当本地仓库去向远程仓库发起推送(push)的时候,会发生“提交记录”不匹配的情况。这个时候,需要有一个标杆出现!
--force就是以本地的代码为标杆,强制覆盖远程中的文件。(建议使用--force之前,和团队成员商量好是否可以,不然小心被打)
上述是第一种解决办法。
标签:Git,仓库,代码,远程,简易,git,命令行,push,目录 From: https://www.cnblogs.com/JerryKid/p/17488973.html