git 纯小白第一次push遇到的问题
公司用gitlab做代码管理,我本地写了一个自动化测试框架,想把代码push到远端仓库,因为第一次接触git,导致问题重重,在此记录一下以便后面再次遇到可以查阅。
遇到的问题按时间顺序排列
1. 用IDEA 内置git工具提交代码,最后Push 的时候遇到“couldn't add remote: remote origin already exists”
尝试操作: 用Git Bash,进入本地项目目录,执行 git remote rm origin 命令
2. git push origin master 失败
原因:没有权限push到master branch
尝试操作:在 gitlab 对应项目上创建新 branch, 我命名为dev, 然后在Git Bash里执行如下命令:
git checkout -b dev
git push -u origin dev
然后失败,遇到下面问题。
3. push 失败,提示“updates were rejected because the remote contains work that you do not have locally......”
原因:远端branch上有本地没有的文件或者改动
尝试操作: 在Push之前执行git pull origin dev
然后执行 git push -u origin dev, 继续失败,遇到下面问题:
4. 提示“updates were rejected because the tip of your current branch is behind its remote counterpart.....”
原因: 远端项目的版本号比本地的更新,通常原因是别人提交了新的change到远端仓库但我没有pull到本地,但这里肯定不是这个原因,具体我也不知道。
尝试操作:执行 git pull origin dev
然后遇到下面问题
5. 提示“fatal: refusing to merge unrelated histories”
原因: 未知
尝试操作: 执行 git pull origin dev --allow-unrelated-histories
到这里终于没有再报任何错,然后执行 git push origin dev 顺利提交代码!
真心不容易。