git 命令行大全

  

git branch -a 查看本地分支
git fetch origin --prune 更新本地分支


1.强制推送(慎用,除非你认为其他冲突等可以丢弃 或者不是很重要)

git push -- force
2.创建文件等小命令

touch a // 创建一个a文件
echo 1234 >> a // 把1234这个内容放入a文件
cat a // 打开a文件 读取出a文件中的内容
mkdir test // 创建test文件夹
rm 文件名 // 删除文件
pwd // 打印当前工作路径
3.安装git的时候 都会安装git bash和git GUI 我们完全也可以使用git GUI来提交版本 与sourcetree等功能相同

gitk // 用git命令快速打开git GUI
4.文件信息

ls // 查看当前路径下面的所有文件名
ls 文件夹名 // 查看对应文件夹中的内容
ls -l // 拉出最近git提交记录以及对应修改的文件名
ls -l -a // 拉出最近git提交记录以及对应修改的文件名,隐藏的文件也会显示
5.cd快速切换路径

cd ~ // 将工作路径快速切换到root
cd - // 将工作路径切换到上一状态
cd ../ // 切回到上一个工作路径
cd 文件夹名 // 进入某个目录
cd / // 进入根目录
6. vim模式

vim 文件名 // 新建一个文件
i 插入内容
按下esc :wq 保存并退出
按下esc :q 直接退出
vim 模式下 文件中#号开头的为注释
.project 忽略.project文件
*.obj 或者 *.exe 忽略一类文件 例如以.obj .exe 结尾的文件
git check-ignore -v .project 查看ignore中.project的位置
7.常用git 命令

git init // 初始化 在工作路径上创建主分支
git clone 地址 // 克隆远程仓库
git clone -b 分支名 地址 // 克隆分支的代码到本地
git status // 查看状态
git add 文件名 // 将某个文件存入暂存区
git add b c //把b和c存入暂存区
git add . // 将所有文件提交到暂存区
git add -p 文件名 // 一个文件分多次提交
git stash -u -k // 提交部分文件内容 到仓库 例如本地有3个文件 a b c 只想提交a b到远程仓库 git add a b 然后 git stash -u -k 再然后git commit -m "备注信息" 然后再push push之后 git stash pop 把之前放入堆栈的c拿出来 继续下一波操作
git commit -m "提交的备注信息" // 提交到仓库
若已经有若干文件放入仓库,再次提交可以不用git add和git commit -m "备注信息" 这2步, 直接用
git commit -am "备注信息" // 将内容放至仓库 也可用git commit -a -m "备注信息"
* git commit中的备注信息尽量完善 养成良好提交习惯 例如 git commit -m "变更(范围):变更的内容"
8.存储密码凭证 设置别名 获取config信息以及配置

git config --list // 获取config信息
git config --global core.safecrlf false // 去掉git add 命令后 出现的一堆CR LF提示信息
其中CR是回车的意思 LF是换行
git config --global credential.helper wincred // 存储凭证 (可用于输入一次用户密码后,不再输入 有时我们已经用SSH key 绑定关联好了 但是每次git提交的时候 还是需要你输入用户名密码 在这个时候 敲入这个命令 将凭证存储起来 用户名密码就不需要再次输入了)
git config --global alias.ci commit // 将commit命令设置别名ci git commit命令将由git ci来代替
9.查看git常用命令

git helper -a // 查看全部git子命令
10.逐行查看文件的修改历史

git blame 文件名 // 查看该文件的修改历史
git blame -L 100,10 文件名 // 从100行开始,到110行 逐行查看文件的修改历史
11.清除

git clean -n // 列出打算清除的档案(首先会对工作区的内容进行提示)
git clean -f // 真正的删除
git clean -x -f // 连.gitignore中忽略的档案也删除
git status -sb (sb是 short branch) // 简洁的输出git status中的信息
12.删除放入暂存区文件的方法(已commit后)

git rm 文件名 // 将该文件从commit后撤回到add后
git reset HEAD^ --hard // 删除后 可以用git rm 文件名再回撤一步
13.查看提交内容

git hi -5 // 查看前5条内容
git hi --grep hello // 过滤提交信息里有hello字眼的内容
14.修改文件名以及移动

git mv a b // 把a文件名字改成b 并且直接放入git add后的暂存区
git mv b ./demos/ // 把b文件移动到demos文件夹下
15.对比工作区,暂存区,仓库的差异

git diff // 查看变更 工作区与暂存区的差异比对
git diff --cached // 暂存区与提交版本的差异
git diff HEAD // 工作区与仓库中最后一次提交版本的差别
git diff 版本哈希值 版本哈希值 // 查看这2个版本哈希之间的区别
或者 git diff HEAD~数字 HEAD~数字
git tag tt HEAD~4 给倒数第5次提交打一个tag tag名字是tt
git diff tt 就是倒数第5个版本与第一个版本之间的差异
git diff --cached tt 暂存区与倒数第5个版本之间的比对
16.查看提交信息

git show HEAD // 查看最后一次提交修改的详细信息 也可以用git show 哈希值 查看对应的内容
git show HEAD^ // 查看倒数第二次的提交修改详细信息
git show HEAD^^ 或者git show HEAD~2 查看前2次变更
git show HEAD 或 git show 哈希值 或者git show tag(标签名) 都可以查看最近一次提交的详细信息
17.查看信息

git log --pretty=format:'%h %ad | %s%d [%an]' --graph --date=short
// 获取git log里的树形详细信息 包括hasg 日期 提交信息 提交人等
git log --oneline //拉出所有提交信息 q是退出
git log -5 // 查看前5次的提交记录
git log --oneline -5 // 打印出的日志里面只有哈希值和修改的内容备注
git log 文件名 // 查看该文件的提交
git log --grep // 想过滤看到的内容 过滤日志
git log -n // 查看近期提交的n条信息内容
git log -p // 查看详细提交记录
18.变基操作,改写历史提交 把多次提交合并起来

git rebase -i HEAD~3 变基之后的哈希值与之前的不同 证明变基是重新做的提交 把多次提交合并成了几次提交
19.回撤操作

git commit --amend -m "提交信息" // 回撤上一次提交并与本次工作区一起提交
git reset HEAD~2 --hard // 回撤2步
git reset --files // 从仓库回撤到暂存区
git reset HEAD // 回撤暂存区内容到工作目录
git reset HEAD --soft 回撤提交到暂存区
git reset HEAD --hard // 回撤提交 放弃变更 (慎用)
git reset HEAD^ // 回撤仓库最后一次提交
git reset --hard commitid // 回撤到该次提交id的位置
git push -f -u origin 分支名 所有内容都回撤完了 将回撤后的操作强制推送到远程分支
20.标签操作

git tag // 查看列出所有打过的标签名
git tag -d 标签名 // 删除对应标签
git tag 标签名字 // 在当前仓库打个标签
git tag foo -m "message" // 在当前提交上,打标签foo 并给message信息注释
git tag 标签名 哈希值 -m "message" // 在某个哈希值上打标签并且写上标签的信息
git tag foo HEAD~4 // 在当前提交之前的第4个版本上 打标签foo
git push origin --tags // 把所有打好的标签推送到远程仓库
git push origin 标签名 // 把指定标签推送到远程仓库
git stash // 把暂存区的内容 暂时放在其他中 使暂存区变空
git stash list // 查看stash了哪些存储
git stash pop // 将stash中的内容恢复到当前目录,将缓存堆栈中的对应stash删除
git stash apply // 将stash中的内容恢复到当前目录,不会将缓存堆栈中的对应stash删除
git stash clear // 删除所有缓存的stash
git pull --tags // 把远程仓库的标签也拉取下来
git push origin :refs/tags/远程标签名 // 删除远程仓库的标签
21.分支

git branch 分支名 // 新建分支
git branch // 查看当前所有分支
git checkout 分支名 // 检出分支
git checkout -b 分支名 // 创建并切换分支
git checkout commitId 文件名(文件路径下的文件名) 还原这个文件到对应的commitId的版本
(例如src/page/attendance/attendanceSum.vue我想把它还原到2个版本之前 首先git log src/page/attendance/attendanceSum.vue找到对应想要还原的版本
复制版本提交的commitID 然后执行git checkout commitID src/page/attendance/attendanceSum.vue
这样就把attendanceSum.vue这个单个文件 还原到了对应版本)
git branch -v // 查看分支以及提交hash值和commit信息
git merge 分支名 // 把该分支的内容合并到现有分支上
git branch -d 分支名 // 删除分支
git branch -D 分支名 // 强制删除 若没有其他分支合并就删除 d会提示 D不会
git branch -m 旧分支名 新分支名 // 修改分支名
git branch -M 旧分支名 新分支名 // 修改分支名 M强制修改 若与其他分支有冲突也会创建(慎用)
git branch -r // 列出远程分支(远程所有分支名)
git branch -a // 查看远程分支(列出远程分支以及本地分支名)
git fetch // 更新remote索引
git push -u origin 分支名 // 将本地分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push 也可解决 git建立远程分支关联时出现fatal ... upstram的问题

  

120 字之内
全部评论(0)
推荐阅读,请笑纳
前沿攻略 前沿攻略 2019-04-29

常用 Git 命令清单

我每天使用Git,但是很多命令记不住。一般来说,日常使用只要记住下图6个命令,就可以了。但是熟练使用,恐怕要记住60~100个命令。下面是我整理的常用Git命令清单。几个专用名词的译名如下。Workspace:工作区Index/Stage:暂存区Repository:仓库区(或本地仓库)Remote:远程仓库一、新建代码库#在当前目录新建一个Git代码库$gitinit#新建一个目录,将其初始化为Git代码库$giti

收藏 0 推荐 0 评论 0 阅读 444
行星故事 行星故事 2019-09-20

Evue 商城系统神器

模仿有赞商城系统后台,使用vue-element-ui+vue+evue点击一下链接进行预览以下模块没有您需要的。请加QQ:1125093590咨询点击这里前往体验哦微页面

收藏 0 推荐 0 评论 0 阅读 508
前沿攻略 前沿攻略 2019-05-24

散列对应

<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title></head><body><script>letms=

收藏 0 推荐 0 评论 0 阅读 342
前沿攻略 前沿攻略 2019-06-11

css3新特性黏着性

position:-webkit-sticky;position:sticky;

收藏 0 推荐 0 评论 0 阅读 268
香气怜人 香气怜人 2019-06-30

2019-6-30

第一章蜜蜜娘亲,我想你了

收藏 0 推荐 0 评论 0 阅读 287
香气怜人 香气怜人 2019-06-30

2019-6-30

第二章坑爹的穿越

收藏 0 推荐 0 评论 0 阅读 285
香气怜人 香气怜人 2019-07-05

2019-6-30

第三章扔扔扔……她终于又出现在我眼前,粗衣麻布依旧,一边张罗饭菜,一边招呼家里的另一位妇人坐下。“吃吧!奶娘!小凤凰让我来照顾便可。”“嗯,好!”奶娘看我的眼神似乎不太友善,带着虚与委蛇的微笑。哦,对了,我小时候是有奶娘的,记得娘亲说过,我是个来向她要债的,三岁前换了七八个奶娘,最后她决定一个人独自照顾我,便再没有请过奶娘了。我猜想,娘亲许是某大户人家的养在深闺的娇娇女,遇人不淑,所嫁非人,才会沦为弃妇。定是因为多了我这个拖油瓶,没了脸面,才会避世隐居的。娘亲坐到我身傍,晃着一双清澈的眸子看我,酒窝一显一现的,绝对是跟我说话的专属表情。“好吃吗?”当然!......好!只要是跟你一起吃,这世间上没有不好吃的东西!我不由自主地抓了

收藏 0 推荐 0 评论 0 阅读 300
香气怜人 香气怜人 2019-06-30

2019-6-30

第三章九转还魂蛇山有股力量限制着灵力的使用,幸好有月下仙人和扑哧君护送,锦觅才顺利上了蛇山,三人经过几番与群蛇的恶战,九死一生地来到了山顶,锦觅被蛇咬伤了脚,她强忍着蛇毒发作的痛苦,坚持不要他俩撑扶,行走来到了廉晁的宅子,见到廉晁上仙。月下仙人向廉晁讲述了天界发生的一切。“事情便是这样。太微灭道,荼姚幽囚,我是为了太微之子旭凤,来这一躺的。”锦觅说:“仙上,如果您肯拿出玄穹之光救旭凤,锦觅愿倾其所有!”廉晁叹息:“荼姚,没想到数千年之后,我与你仍然是这般纠葛。”廉晁开始讲述着一万多年前他与荼姚、太微之间的故事,原来他心系荼姚,而荼姚却一心只想嫁给太微做天后,太微为坐天帝之位心狠手辣加害于他,他为有避世远居。说完他看着锦觅,“你说我的穹之光,可救旭凤一命?”锦觅点点头:“仙上,如今我知道这些过住,更知要仙上平白献出这玄穹之光救

收藏 0 推荐 0 评论 0 阅读 216
香气怜人 香气怜人 2019-06-30

2019-6-30

第四章玄武神兽锦觅复活旭凤后昏迷了半天,醒来之时感觉身下一片冰凉,睁开眼睛看见漫天飞雪,她坐起来,环顾四周,此处大概是一个隐蔽的夹谷,地面都结了冰。锦觅自小就不怕冷,不过这回也就第一次睡在这寒冰之上,却不但不觉得寒冷,反而比先前在虞渊时感觉好多了。“奇怪,我怎么会在这里?这里究竟是什么地方?”她抚了抚心口,“我的伤好像好了许多!看来是冰雪所起之作用!可是我是如何来到此处呢?”“仙女姐姐,你终于醒了?”突然传来一个稚气的声音。锦觅环顾四周无人:“请问是何人?”“我在这里!”那个稚气继续说。锦觅顺声看去,发现一个铜钱般大小的黑色东西正从她的衣襟内攀附着纽扣爬了出来,大概是没有抓牵一个失手便掉到雪地上面,“哎呀!疼死我了!”正是刚才那个稚气的声音。“吓!”锦觅被吓得瞪了眼,后退三步,“你是……你是妖魔吗?”她低头再看时发现原来是

收藏 0 推荐 0 评论 0 阅读 205
香气怜人 香气怜人 2019-06-30

2019-6-30

第五章花神死遁(1)润玉刚给锦觅渡了很多灵力,她才醒过来,医官和太上老君都过来为锦觅诊过脉。“她情况怎么样?何时能痊愈?”“回禀陛下,水神仙上被幽冥之火所伤,本来静养半年即可。但是没想到水神仙上先前竟然用她自己的真身承载玄穹之光,据我等所知过往使用真身承载玄穹之光的上神……至今无一生还,臣恐怕水神仙上也会……”医官说着说着点怯,不敢说下去。润玉大眼瞪了一下医官。太上老君说:“医官此言差矣,我等千万年来,从未治疗过有着水神仙上这样奇特真身的上神,孤漏寡闻,当然不懂如何医治!天帝陛下,臣听闻水神仙上仍花界少主,自小生长在花界,花界环境清幽六界无一处能及,或许更适合水神仙上调养身体!再者花界有的是珍稀的圣草仙药,岂是我天界能比拟啊!

收藏 0 推荐 0 评论 0 阅读 306