赞
踩
在 gitlab 上已有一个远程仓库,主分支为 main
,其中有一些内容。本地有一些项目代码,想要把这些代码放到远程的 main
分支上。
本地的项目代码有些是自己写的,有些是从其他的仓库 clone 来的。对于后者,我们需要删除与源码一同 clone 来的 .git 文件,以免与我们新建仓库时产生的 .git 文件冲突。
这里我不需要把 clone 下来的代码视作单独的项目管理,否则需要 git 子模块的操作。
之后 git init
在本地新建仓库,新建后立即使用 git remote add origin URL
添加远程仓库并使用 git pull
把远程仓库的内容拉取。之后切换到相应的远程跟踪分支,这里是 main
,把本地原有的代码用 git add
添加上,之后 git commit ... & git push
就好了。
这里强调立即是因为这时 git 还没有跟踪本地原有的代码,可以较为方便的进行拉取和分支切换。如果你新建仓库后先使用 git add
跟踪了原有的代码,那么你切换到需要的远程跟踪分支时后会发现工作区没有本地代码,或者你 git pull
的时候会因无法合并不同源的分支而失败。我就走了这个弯路。
挽救措施是使用 git rm --cached -r .
把原来着急 git add
的文件从暂存区删掉(这一操作会删掉暂存区的内容,保留工作区的内容,并取消 git 的跟踪) 这样就可以比较方便的把本地代码放到需要的本地分支上了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。