Mac被水浇了之后,只好用Window 开发了。但是在往Github上提交代码出现了些问题。
1. 提交时总是出现弹出框提示账号认证
之前Mac没有出现过这问题,所以有些怀疑Windows开发环境不友善导致了。因为没理解清楚,尝试了好几次都提交失败。
这里需要理解Git的账户管理。Git第一次push到remote repository时,需要认证。针对不同remote repository,认证的账号可能不同,提供针对该repository有fetch/push权限的账号即可。
2. 提交时git log会显示意料之外的email
之所以说意料之外,是因为push的时,我提供的认证账号明明是email1, 但是为什么log显示的是email2呢?
Git生成log,似乎和认证账号没关系,而是用户在初次初始化Git提供的user.name, user.email。这个信息保存在git global config里面。在git commit生成的log里面就有email的信息。而认证账号在push到remote repository时用到的。
3. 如果提交了错误的commit msg信息,这时候需要修改commit msg信息
可以用 git commit --amend 修改commit msg的信息,然后 git push -f origin/branch_name