Git常用操作极简整理

日常使用的6个命令

在这里插入图片描述
图片来源:阮一峰《常用 Git 命令清单》

单分支

git status

展示在哪个分支。查看对repo哪些文件进行修改,这里是还没有经过git add操作的

git add -u

添加已经在 repo 中,但进行修改的文件。比如下两个命令好用且安全得多:

  • 添加所有文件 git add . → \rightarrow 容易误加文件
  • 手动添加一堆文件 git add → \rightarrow 效率太低

git show <commit-id>

显示某条 commit 的修改,不加 commit id, 则默认显示最近一条 commit

git diff <filename>

还没 commit 前,查看修改的内容,filename 不加则默认显示所有文件的 diff。
注意git status不显示被修改的内容,这是二者的区别

git stash

缓存在 repo 里但做过修改的文件,和git add 的区别在于这种缓存是暂时的,并不希望形成一个节点。例如项目开发到一半,需要git pull最新代码或是hotfix一些小的bug。使用git stash pop恢复这些修改

git blame <filename>

可以看到某个文件每一行的最后修改者,方便追朔问题。
比如看到某一行代码不太懂,可以git blame,然后直接去询问最后一个修改者

查看commit记录

git log
(包括 commit-id)

回滚

git reset <filename> 用于去掉那些 git add 但还没 git commit 的文件;
git reset --hard <commit-id>,回滚代码到某个 commit 状态
git reset --hard HEAD~3 表示回退3次

多分支

查看有哪些分支

git branch -a

切换分支

git checkout xxx

另一个版本的总结

git init
git add haha.txt
git commit -m “wrote a readme file”

git status //看哪个文件变了
git diff //看变了啥
git diff HEAD --hahaha.txt

git log //你都改了啥
git log --pretty=oneline //显示成一行
git reset --hard HEAD^ //回退一次
git reset --hard HEAD~100 //回退一百次
git reset --hard 3628164
git reflog //所有的log

git checkout – hahaha.txt //丢掉工作区的修改
git reset HEAD file //丢掉暂存区的东西

git rm lala.txt //删除

远程管理:

git remote add origin https://github.com/YexiaoGil/learngit.git //远程关联
git push -u origin master //本地库的所有内容推送到远程库 -u upstream 是由于第一次推送master分支

git clone http://github.com/YexiaoGil/gitskills.git //克隆到本地

分支管理:
git checkout -b dev //创建分支并切换 相当于 git branch dev
git checkout dev
git checkout master //转到master分支
git merge dev //把dev分支的工作合并到master分支上
git branch //查看分支
git branch dev //创建dev分支
git branch -d dev //删除dev分支

git log --graph --pretty=oneline --abbrev-commit //查看合并情况

git merge --no-ff -m “hahaha” dev //no-ff 禁用Fast forward -m由于要创建一个新的commit

git stash //把工作区的东西临时存放起来
git stash apply //恢复工作去但不删除
git stash drop //删除工作区
git stash pop //恢复同时删除
git stash apply stash@{0} //指定恢复内容

git branch -D //强行删除

git remote //显示远程库
git remote -v //显示更新信息

git pull //把最新提交的东西抓下来
git branch -set-upstream dev origin/ //把本地分支与远程分支链接起来

协作补充:
git fetch origin development:development //拉取远程的一个叫develop的分支,并在本地创建一个叫develop的分支和远程的分支匹配

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值