好久没有使用git,都忘记git的操作流程了,只能强制回忆一下:
今天接到领导通知,要把我这边写的代码提交到远程仓库,然后就想,他那边仓库里的代码源码都是我提供的,我本地在pycharm 中也是添加了git管理的,所以就想直接我这边的仓库代码直接push 到远程仓库上去,先pull,然后在push就行了,结果搞了半天,一直提示我这边的版本在远程仓库之前的版本:hint: Updates were rejected because the tip of your current branch is behind
试了各种方法: 比如先执行命令,git pull xxx(网址或者别名) xxx分支 –allow-unrelated-histories,然后在push,还是死活都提交不上去,最后只能放弃了这种方式,老老实实把远程仓库先克隆下来, 1、git clone git远程仓库地址 分支(需要提供git的用户名和email) 然后再在本地添加和修改代码文件 2、使用pycham的工具直接commit 这一步工具实际有变化的文件先整理出来,给一个列表,把新增的的文件先add到暂存区,然后再把修改和新增的文件一起commit,这一步最好写一些注释信息,让人看懂你都提交了写什么文件,修改了什么文件 3、然后直接使用pycharm工具push代码到远程分支上 注意这一步必须保证之前commit时,username和email填写正确的格式,否则提交不上去,就类似于下面这些错误: remote: GitLab: Author ‘qaz.1234’ is not a member of team 一直不明白为啥要报错,我的用户名明明是正确的,git在push/push to时需要使用到user.name和user.email,切记一定要配置好 后来使用git log命令看到本地提交的日志才明白是auth搞错了,邮箱密码的格式必须正确(其中<>内部,就是邮箱地址,如果不填写正确是无法提交到远程仓库的,这一点git是有强制校验的)
所以肯定是之前配置有误,所以我执行以下命令修改配置(加上–global可以全局修改,否则仅在本git-repo生效): git config –global –replace-all user.name “your user name” git config –global –replace-all user.email “your user email” 修改完成后使用命令查看修改后的值是否正确 git config user.name git config user.email
然后使用命令修改最近一次commit的信息,然后再push才能提交成功 git commit –amend –author=”userName “ 成功的提交如下图:
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/175188.html原文链接:https://javaforall.cn