git日常命令整理

转载:博客PHPer技术栈 的博客,https://learnku.com/articles/78253

1. 检测 git 是否安装成功

git --version

2. 配置 username, email

git config --global user.name “user”
git config --global user.email “user@qq.com”

3. 查看自己的配置

git config --global --list

4. 新建仓库 或者 直接使用

git init project cd folder git init

5. 克隆远程分支

git clone git@git.xxx.com:php/file.git

6. 还原单个文件

git reset 9b7e88b7c2c4ec8a046 app/Services/ClubService.php

7. 查看分支的所有操作记录

git reflog

8. 回退到指定的版本(不可撤销)

git reset --hard 版本id

9. git 替换项目中的文件名 rname 变成 rname.md

git mv rname rname.md

10. 查看分支

git branch
git branch -v
git branch -a #查看远程分支

11. 切换分支

git checkout master

12. 从 master 拉下一个新分支

git checkout master
git pull origin master
git checkout -b new_branch

13. 本地添加/删除分支

git branch addUrl
git branch -d addUrl
git branch -D addUrl

14. 删除远程分支

git push origin --delete dev

15. 使用远程 gold 分支在本地创建 gold (但不会切换到该分支)

git fetch origin gold:gold

16. 查看整个版本所有分支的衍生历史最近4个

git log --oneline --all -n4 --graph(分支线)

17. 合并多个commit内容

# 1).查看历史记录
git log 
# 2).摘取希望合并到的commitid
git rebase -i c6f8d7ac1bc3501050c661cf4b594d790ed9c33a 
# 3).第二个pick改为s,输入wq保存退出
# 4).若第3)步有冲突,解决冲突后,执行
git rebase --continue
# 5).修改commit信息,wq保存退出
# 6).再次查看历史记录
git log

18. 查看类型/打开类型

git cat-file -t 9b7e88b7c2c4ec8a046 # 查看
git cat-file -p 9b7e88b7c2c4ec8a046 # 打开

19. 修改最后一次 commit 内容,并提交

git commit --amend

20. 修改指定一次 commit 提交的描述

找到Parent的commit码

git rebase -i 9b7e88b7c2c # 产生一个交互
pick 改为 reword

21. 工作区修改差异

git diff

22. 工作区恢复文件

git checkout . # 所有文件
git checkout – index.php # 单个文件

23. 删除工作区

git rm index.php

24. 暂存区与工作区差异

git diff --cached
git diff – index.php # 单个文件比较

25. 取消暂存区的内容

git reset head # 所有文件
git reset – index.php # 单个文件
git reset – index.php master.php # 多个文件

26. 比较commit 提交的文件

git diff 9b7e88b7c2c4ec8a046 77ee88b7c2c4ec8a046

27. 合并解决冲突

# 1). 查看当前文件状态
git status  
# 2). phpstrom编辑器:vcs->git->resolve confilcts
# 查看冲突文件,本地分支与目标分支对比,查看差异化文件,合并处理
# 3). 再次查看文件状态
git status 
# 4). 无冲突文件后执行
git merge --continue

28. 提交代码

# 1). 添加文件到暂存区
git add .git add 文件 
# 2). 提交到本地仓库
git commit -m "提交功能"
git --amend  "最后一次提交做修正"
# 3). 推送到远程仓库
git push origin 分支名

29. 分支合并

# 1).切换目标分支
git checkout 分支名 
# 2).更新分支源文件
git pull origin 分支名 
# 3).注意查看冲突文件
git merge 需合并的分支名 
# 4).查看文件状态,是否有冲突
git status  
# 5).推送本地合并
git push origin 分支名 
# 6).查看分支合并记录
gitk 或 git log 

30. 危险命令 撤回版本(不保留修改)

# 1).查看分支记录
gitk 
# 2). 退回某一次提交 SHA1 ID
git reset --hard 9b7e88b7c2c4ec8a046  

31. 危险命令 撤回版本(保留修改的内容)

git reset 9b7e88b7c2c4ec8a046

32. 保存栈

git stash git stash save “文本” #添加文本
git stash list #查看列表
git stash apply #重复使用
git stash apply stash@{1} git stash pop #一次使用
git stash pop stash@{1} git stash drop stash@{1} #删除
git stash drop clear #删除所有

33. 落后分支解决

# 方法一:
    # 1).切到master分支
    git checkout master 
    # 2).master分支拉到最新
    git pull origin master 
    # 3).切回落后分支
    git checkout report_debug 
    # 4).rebase master
    git rebase master 
    # 5).提交,需要强推.
    git push origin report_debug -f 
# 方法二:
    # 1).新建版本分支
    git checkout -b fix_action 
    # 2).摘取某一个记录
    git cherry-pick bbe3a03a385af25ab4e8d8177060f86a80e1eb7f 
    # 3).提交记录
    git push origin fix_action

34. 将上面的commit id为0771a0c107dbf4c的提交添加到B分支上面

git checkout B git cherry-pick 0771a0c107dbf4c #发生冲突

继续操作

git add . # 将文件标记为已解决
git cherry-pick --continue # 继续进行cherry-pick操作

取消本次cherry-pick操作

git cherry-pick --abort # 取消这次cherry-pick

35. Git pull 强制拉取master并覆盖本地代码

git fetch --all
git reset --hard origin/master
git pull origin master

36. 远程分支落后本地分支

1). 删除远程分支

git branch -D preview

2). 重新拉取分支

git fetch origin preview:preview

37. git – rebase不能提交和停止解决方法

git status

rebase in progress; onto 9c168a5 You are currently rebasing branch ‘master’ on ‘9c168a5’. (all conflicts fixed: run “git rebase --continue”) nothing to commit, working directory clean

git branch

(no branch, rebasing master) develop master

解决方案:git rebase --skip

38. idea 目录加入.gitignore无效的解决方法

git rm -r --cached .idea #文件夹
git rm --cached data_center.iml #文件

39. 在PATH处输入要忽略的文件

git update-index --assume-unchanged PATH

40. 指定远程仓库

git remote set-url origin

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值