欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Git 使用笔记(持续更新中...)

程序员文章站 2022-06-24 17:06:37
...

Git在工作中每天都会用到,从开始pull , push ,到后面的回滚和删除,踩过很多坑,这里记录一下。

1. windows系统, git在http模式下,每次都需要输入账号密码的解决方案:

git config credential.helper manager

2. 查看用户名和邮箱地址:

 git config user.name

 git config user.email

3. 修改用户名和邮箱地址:

 git config --global user.name "username"
 git config --global user.email "email"

4. Git ignore设置 :

 git rm --cached < file name >
 git commit

然后添加这个文件到.gitignore中去。其实就是先把远端的去掉,再加到.gitignore 中,这样才会生效。

5. 把push和pull的默认分支设置为dev/master,那么:

git branch --set-upstream-to=origin/dev dev
git branch --set-upstream-to=origin/dev dev

6. 创建远程分支(本地分支push到远程):

 git branch [name]
 git push origin -f [name]

7. Git切换到一个全新的分支:

git checkout -b <branch>

8. 删除本地分支:

git branch -d <branch_name>

9. 删除远端分支:

git push origin -d <branch_name>

10. 回滚本地所有没有提交的修改

git checkout . 

11. 暂存和取消暂存

git stash 
git stash pop

12. 删除因改动文件名大小写而生成的暂存

git rm -f src/middleware/file.js

13. 回滚

查看历史日志,回退本地分支:

git reflog 

reset到某个节点:

git reset --hard Obfafd

紧接着强制推送到远程分支:

git push -f

14. 回退提交

首先 查看提交号

git log

如果当前是merge提交,需要下面这样:

git revert -m 1 c96eeea38b1c6aab70fb6795575f0d3d3b01e592
git push

否则

git revert c96eeea38b1c6aab70fb6795575f0d3d3b01e592
git push

15. 使用 git rebase [basebranch] [topicbranch] 命令

可以直接将特性分支(即本例中的 server)变基到目标分支(即 master)上。
这样做能省去你先切换到 server 分支,再对其执行变基命令的多个步骤。(但是这里的提交记录还是会保留的)

git rebase master server  // 这个时候已经在server分支了
git checkout master
git merge server

16. 比较分支和版本

git diff master..server

相反,这些比较信息仅仅是在分支层面上的,你也可以比较任意的两个项目版本之间的内容:

git diff 0023cdd..fcd6199

17. 保持Master分支干净

先从master 拉一个分支A,
然后目标B分支rebase master 分支
然后Git Graph对比 A &  B分支的差别,同步B到A(手动)
提交A,Master Merge A
相关标签: git