Git 常用技能总结
Posted 互联网后端架构
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git 常用技能总结相关的知识,希望对你有一定的参考价值。
使用 Git 偶尔碰到一些生僻的技能,总是需要去 Google,第二次用时又忘了。所以这是一篇我自认为比较重要的 Git 技能表,主要供自己查阅使用,反复查阅能够加深印象,提升技能熟练度。如果你是还不知道 Git 是什么,建议先阅读 廖雪峰的Git教程。
- 工作流 -
Git 最核心的一个概念就是工作流。工作区(Workspace)是电脑中实际的目录;暂存区(Index)像个缓存区域,临时保存你的改动;最后是版本库(Repository),分为本地仓库和远程仓库。下图真是一图胜千言啊,就无耻盗图了。
- 远程仓库 -
添加远程仓库
git remote add origin git@server-name:path/repo-name.git #添加一个远程库 |
查看远程仓库
git remote #要查看远程库的信息 |
推送分支
git push origin master #推送到远程master分支 |
抓取分支
git clone git@server-name:path/repo-name.git #克隆远程仓库到本地(能看到master分支) |
抓取GitHub上某个pull request到本地
git fetch origin pull/ID/head:BRANCHNAME |
$ git branch --set-upstream branch-name origin/branch-name
,可以建立起本地分支和远程分支的关联,之后可以直接git pull
从远程抓取分支。
另外,git pull
= git fetch
+ merge
to local
删除远程分支
$ git push origin --delete bugfix |
更新远程分支信息
项目往前推进的过程中,远程仓库上经常会增加一些分支、删除一些分支。所以有时需要与远程同步下分支信息。
git fetch -p |
-p
就是修剪的意思。它在fetch之后删除掉没有与远程分支对应的本地分支,并且同步一些远程新创建的分支和tag。
- 历史管理 -
查看历史
git log --pretty=oneline filename #一行显示 |
版本回退
git reset --hard HEAD^ #回退到上一个版本 |
用HEAD表示当前版本,上一个版本就是HEAD^
,上上一个版本就是HEAD^^
,HEAD~100
就是上100个版本。
管理修改
git status #查看工作区、暂存区的状态 |
查看差异
git diff #查看未暂存的文件更新 |
使用内建的图形化git:gitk
,可以更方便清晰地查看差异。当然 Github 客户端也不错。
删除文件
git rm <file> #直接删除文件 |
储藏和恢复
git stash #储藏当前工作 |
- 分支管理 -
创建分支
git branch develop #只创建分支 |
合并分支
git checkout master #切换到主分支 |
- 标签 -
显示标签
git tag #列出现有标签 |
###创建标签
git tag v0.1 #新建标签,默认位 HEAD |
操作标签
git checkout <tagname> #切换到标签 |
- Git 设置 -
设置 commit 的用户和邮箱
git config user.name "xx" #设置 commit 的用户 |
- END -
往期回顾
◆
◆
◆
以上是关于Git 常用技能总结的主要内容,如果未能解决你的问题,请参考以下文章