1、修改git 提交时显示的用户名和邮箱:
git config --local --list 查看本地是否设置git上传的用户名和密码;
git config user.name 查看本地当前的git用户名;
git config user.email 查看本地当前的git用户邮箱;
git config --global user.name xiaofu --global代表的是全局,修改全局的git用户名;
git config --global user.email idolxx@163.com 修改全局的git用户邮箱;
如果想直接修改工程的git用户名和密码:
git config user.name xiaofu 修改当前工程git提交用户名
git config user.email idolxx@163.com 修改当前工程git用户名邮箱
2、提交工程
git status 查看状态;
git add . 把所有代码暂存;
git commit -m "test" commit的时候会把代码都存到本地仓库;
git push 把本地仓库里的代码推到线上仓库
3、回滚代码
git reflog 查看所有git提交版本日志
git reset --hard 版本号 回滚到指定版本号的代码
git pull 再回滚到当前最新代码
4、拓展
建议日常git提交代码流程如下:
git commit -am "xxx"
git pull --rebase
若有文件冲突,解决后执行git rebase --continue
git push
另外几点要求:
- pull时一定要加 --rebase参数
- 杜绝git push -f 这种强制推送方式
- 回退代码不建议使用git revert,会导致log比较乱,用git reset替代 使用git
reset时注意不要回退别人提交的记录 - 尽量不要用IDEA提供的pull和push功能,除了代码对比与合并外,尽量使用git命令,推荐git自带的git-bash命令行工具
5、git commit -m 和 git commit -am的区别
git commit -am 可以写成 git commit -a -m,但不能被写成 git commit -m -a 。
-am可以提交已经跟踪过的代码,省略git add a.txt 这一步骤。
我们需要用git add命令来跟踪新文件,但如果使用git commit -am可以省略使用git add命令将已跟踪文件放到暂存区的功能
6、代码状态
tracked:已跟踪状态
staged: 暂存状态
7、git 切换分支
git remote set-url origin NewProjectUrl
或者
git remote rm origin
git remote -v
git remote add origin http://xxxxxxxxxxx
git remote -v (此时已经更新切换后的git地址)
8、线上完全覆盖本地
pull有冲突时,想要把线上代码完全覆盖本地,执行
git fetch --all
git reset --hard 版本号 回滚到之前版本
git pull 重新拉取代码