Git 常见的一些小命令
Git 常见的一些命令
关于一些参数比较多,比较复杂的都有单独进行介绍
1. git cherry-pick
挑拣命令,当我们不想合并分支,或者git pull 更新仓库,而是想把其他分支或他人的某一个或多个提交拉到我们本地,那么此时我们就可以使用这个挑拣命令了
使用形式如 git cherry-pick commit-id,如果有冲突,手动解决即可
2. git status
查看状态,显示有变更的文件,可以说是最简单也是最常用的命令了,可以将工作区修改的文件以及提交到暂存区的文件都显示出来。
3. git init
初始化仓库,配合git clone使用,先使用git init初始化一个目录,之后在这个目录下使用 git clone 将某个仓库克隆下来
4. git config -l 查看配置清单
配置时git config --global选项,读写的是~/.gitconfig文件:此用户目录下的配置文件只适用于该用户
git config --system选项,读写的是/etc/gitconfig文件:系统中对所有用户都普遍适用的配置
4.1 git config --global color.status auto && git config --global color.branch
为终端配置高亮
4.2 git config --global user.name " "
修改用户名
4.3 git config --global user.email ""
修改email
4.4 git config --global core.editor vim
在git commit 的时候就会调用我们设置的文本编辑器
4.5 git config --global alias.co checkout
给命令设置别名,这样 git co就等于 git checkout
5. git tag 列出所有tag
5.1 git tag [tagname]
为当前commit新建一个tag
5.2 git tag [tagname] [commit-id]
指定为某个commit新建一个tag
5.3 git tag -d [tagname]
删除本地tag
5.4 git push origin:refs/tags/[tagname]
删除远程tag
5.5 git show [tagname]
查看tag信息
5.6 git push [remote] [tag]
提交指定tag
5.7 git push [remote] --tags
提交所有tag
6. git log 查看版本历史
7. git shortlog -sn 统计仓库内每个用户的提交次数
8. git reflog 显示当前分支的最近几次提交
可以配合git reset 进行版本回退,两者组合是git中的后悔药
9. git pull 更新代码
实际上相当于 git fetch 和 git merge
git fetch remote //remote是地址,下载远程仓库里的所有变动
git merge 合并分支
10. git revert
对于已经merge的代码,我们想取消这一版提交,使用git revert 这个命令是生成一版与此提交相反,可以完全抵消这次提交的代码,
它与git reset的区别在于git reset是删除一版未被merge的提交,git revert是生成一个新的提交来抵消一个已经被merge的提交
11. repo 命令
11.1 repo sync
更新仓库,是对git pull的封装,是对所有仓库有效,参照清单文件.repo/manifest.xml克隆并同步版本库,如果某个版本库尚不存在,则执行repo sync命令相当于执行git clone,如果项目版本库已经存在,则
相当于执行这两条指令,git remote update:相当于对每一个remote源执行了fetch操作; git rebase origin/branch:针对当前分支的跟踪分支执行rebase操作
11.2 repo init
git init 初始化的是单个仓库,repo init初始化的是整个版本库或项目
repo init -u ssh://igerrit.storm:29418/Src/17Model/17Cy/manifest -b 17CY/MileStone/T0_Stable 按照指定地址里的manifest清单初始化仓库 -b 之后跟分支,表示的是远程分支,-u 指定一个远程地址,
这一步比较快,之后repo sync更新代码,再之后执行 repo start master --all ,将所有分支都切换到master,这一步是必须的,初始化仓库之后需要切分支 ,因为刚克隆下来的代码是没有分支的,在没有分
支的时候进行的修改可能保存不了
11.3 repo start
repo start master --all,repo start是对git checkout -b的封装,创建并切换分支,区别在于repo start是在清单文件设定分支的基础上创建特性分支,git checkout是在当前所在分支的基础上创建特性分支
11.4 repo forall -c
repo forall -c git gc,使用时形如左式,-c 之后跟shell指令,这种形式的命令可以对版本库中的所有仓库起作用,git gc即是垃圾回收命令
当git仓库使用时间很长之后会有许多碎片和垃圾,repo sync的时候会比较慢,此时就可以使用这个命令来进行优化
古之成大事者,不惟有超世之才,亦必有坚韧不拔之志
Git 常见的一些小命令的更多相关文章
- Git常见的操作及命令
Git的下载安装 安装直接去Git官方网站https://git-scm.com/下载后安装即可. Git常用命令 git init初始化本地仓库(没有仓库就创建) git clone克隆远程仓库到本 ...
- git中常见的几个命令
git中常见的几个命令 本地仓库 三个区域 工作目录 暂存区 本地仓库 文件的四个状态 未跟踪 untracked 已暂存 staged 已提交commited 已修改 modified 基本命令 g ...
- Git常见命令整理
Git常见命令整理 + 注释 git init # 初始化本地git仓库(创建新仓库) git config --global user.name "xxx" # 配置用户名 gi ...
- Pull Request的过程、基于git做的协同开发、git常见的一些命令、git实现代码的review、git实现版本的管理、gitlab、GitHub上为开源项目贡献代码
前言: Pull Request的流程 1.fork 首先是找到自己想要pull request的项目, 然后点击fork按钮,此时就会在你的仓库中多出来一个仓库,格式是:自己的账户名/想要pull ...
- git常见命令
总结自己的Git常用命令 使用git也有一段时间了,把自己常用的命令用自己的描述记录起来,方便自己备忘也方便其他人参考. 目录: 最基本的命令: git clone 拷贝并跟踪远程的master分支. ...
- 转——git常见使用命令及git原理
0.常用命令1 1.git中brunch的使用和理解(一定理解brunch的指针理解和分叉) 分支创建 Git 是怎么创建新分支的呢? 很简单,它只是为你创建了一个可以移动的新的指针. 比如,创建一个 ...
- git 常见命令,规范 整理
move commit to stage area(把本地的1个commit还原到 暂存区) git reset --soft HEAD~1 把其他的commit的合并到现在到分支:git cherr ...
- Git 配置环境及常用命令整理
一.Git教程网站 廖雪峰网站 易百GitHub命令:https://www.yiibai.com/git/git_clone.html 完成Windows环境命令下Git config配置 设置好之 ...
- git常见错误及解决方案总结
git常见错误及解决方案总结 使用git在本地创建一个项目的过程 $ makdir ~/hello-world //创建一个项目hello- ...
随机推荐
- C语言SOCKET编程指南
1.介绍 Socket 编程让你沮丧吗?从man pages中很难得到有用的信息吗?你想跟上时代去编Internet相关的程序,但是为你在调用 connect() 前的bind() 的结构而不知所措? ...
- Linux环境下Nginx配置安装PHP
下边的安装配置方法,我试了一晚上没有成功,可能因为我的系统环境比较复杂,所以建议: 先安装PHP.使用yum命令安装,在安装配置MySQL,具体做法看博客中其他文章,至于Nginx服务器可以安装完这两 ...
- checkedListBox
checkedListBox一键删除多个选中items private void button3_Click(object sender, EventArgs e) { ; i < checke ...
- java多线程面试题
很多核心Java面试题来源于多线程(Multi-Threading)和集合框架(Collections Framework),理解核心线程概念时,娴熟的实际经验是必需的.这篇文章收集了Java线程方面 ...
- eclipse通过ctrl+shift+t无法找到源文件类的解决方法
通过ctrl + shift + t找对应的类时,类明明存在,并且也在编译路径下,但就是查找不到,一个可能的原因就是eclipse为类建立的索引出了问题. 解决的方法是:找到项目所在工作空间下的.me ...
- dedecms在列表或首页取得文章首图的功能改进
在网上找过资料,效果不是很满意,第一个是原理说的不对,第二个是后缀写死. 原文大致如下: 当文章缩略图是自动选取文章内第一个图片裁减所得时 他的命名规则是有规律的 比如原文是1.jpg 它对应的缩略图 ...
- Compare Version Numbers
Compare two version numbers version1 and version1. If version1 > version2 return 1, if version1 & ...
- requerjs 合并 优化配置
/* * This is an example build file that demonstrates how to use the build system for * require.js. * ...
- PHP与apache环境配置
最近想了解一些网页后台的东西,在看Luke Welling,laura Thomson的<php与mysql web开发>,书中环境配置的部分很庞杂,网上的各种教程也很乱,搞了一下午终于成 ...
- Phone Font Size
This table lists and describes the various font sizes that can be applied. Attribute = FontSize Na ...