常用的git和repo命令
首先下图是git的流程图

相关概念

svn与git命令的对比
git常用命令
git log // 查看当前库的git log信息
git status ./ // 查看当前库的状态
git diff ./ // 比较当前库的修改情况
git add ./ // 将当前库的代码修改提交到暂存区
git commit ./ // 将代码提交到本地分支
git commit --amend ./ // 追加修改
git reset HEAD~1 // 将当前库恢复到HEAD的上一个版本
其他命令
git config -l // 参看配置信息
git show HEAD^ // 查看HEAD的上一个版本信息
git show HEAD~4 // 查看HEAD的上溯4代的信息
git reset --hard HEAD^^ // 回退两个版本
git reset --hard 8308f03 // 回退到指定的commitID前7位的版本
git clean -dfx //清除库上没有的东西
git remote -v // 参看远程仓库
git branch -a // 参看远程分支
git log --oneline --decorate --graph --all // 图像显示git log信息
git log --pretty=format:"%h - %cd %s" --graph // 列出指定格式的log
git log -since="2 weeks ago" // 显示2周前到现在所有的历史记录
远程同步
# 下载远程仓库的所有变动
$ git fetch [remote]
# 显示所有远程仓库
$ git remote -v
# 显示某个远程仓库的信息
$ git remote show [remote]
# 增加一个新的远程仓库,并命名
$ git remote add [shortname] [url]
# 取回远程仓库的变化,并与本地分支合并
$ git pull [remote] [branch]
# 上传本地指定分支到远程仓库
$ git push [remote] [branch]
# 强行推送当前分支到远程仓库,即使有冲突
$ git push [remote] --force
# 推送所有分支到远程仓库
$ git push [remote] --all
撤销
# 恢复暂存区的指定文件到工作区
$ git checkout [file]
# 恢复某个commit的指定文件到暂存区和工作区
$ git checkout [commit] [file]
# 恢复暂存区的所有文件到工作区
$ git checkout .
# 重置暂存区的指定文件,与上一次commit保持一致,但工作区不变
$ git reset [file]
# 重置暂存区与工作区,与上一次commit保持一致
$ git reset --hard
# 重置当前分支的指针为指定commit,同时重置暂存区,但工作区不变
$ git reset [commit]
# 重置当前分支的HEAD为指定commit,同时重置暂存区和工作区,与指定commit一致
$ git reset --hard [commit]
# 重置当前HEAD为指定commit,但保持暂存区和工作区不变
$ git reset --keep [commit]
# 新建一个commit,用来撤销指定commit
# 后者的所有变化都将被前者抵消,并且应用到当前分支
$ git revert [commit]
# 暂时将未提交的变化移除,稍后再移入
$ git stash
$ git stash pop
repo常用命令
repo init -u URL -b ........ // 创建.repo
repo upload // 将代码提交到gerrit.
repo abandon master // 放弃master分支
repo forall -c "git reset --hard HEAD" // 所有代码执行git命令,回退到HEAD
// repo sync相当于git clone会把repository中的所有内容拷贝到本地,非首次运行repo sync相当于更新和合并.
// repo sync会更新.repo下面的文件,如果在merge的过程中出现冲突,这需要手动运行git rebase --continue.
repo sync -c -j 4
repo start master --all // 创建新分支
其他帮助参考
git使用的更详细参考: 可以百度“Pro Git 中文版”这个很不错的资料。
另外可以利用工具自带的帮助功能查询常用命令:
repo help
git help
git help [command]
常用的git和repo命令的更多相关文章
- Git 和 Repo常用命令
这篇博客总结的也不错: git常用及进阶命令总结 Git与Repo入门 一.初始環境配置 git config --global user.name "John Doe"git c ...
- 常用的 Git 命令与场景
Git 分布式版本控制系统 它拥有完整的版本控制功能,能够解决多人协作的问题 将自己的代码同步到 Github 上能够提升开发效率 git 会记录你每一次的版本修改操作 常用的 Git 操作 # 指定 ...
- 几个最常用的git命令
之前在Windows下一直用可视化的tortoise git,在Linux下最好是用命令行,以下是常用的git命令: git status:显示当前已修改的文件,新增的文件 git checkout ...
- 简单 常用的git命令
常用的git命令 git pull 获取最新 git add . 提交所有 git commit -m “我的注释” git status 查看状态 git push origin master ...
- 关于常用的git命令列表
我博客园中所写的git内容几乎都是看的蒋鑫老师的<git权威指南>这本书实在太好了. 常用的Git命令. git add 添加到暂存区 git add interactive 交互式添 ...
- 常用的Git命令
我的常用的Git命令 Git仓库配置常用 1. clone 克隆一份远程的Git版本库 git clone git://github.com/someone/some_project.git some ...
- 常用的Git命令整理
之前一直忙于项目苦于没有时间总结,今天刚好有时间特来总结一下在工作中常用到的代码版本管理器Git.至于为什么要用Git?Git相比SVN有哪些好处?我就不多说了,前人已经总结的很好.今天主要介绍的是常 ...
- Git&Repo 命令大全 ***
首先理解几个基本概念: origin:默认远程版本库: master:默认开发分支: 查看本地更新状态: git status jiangzhaowei@ubuntu$ git status # On ...
- 开发常用Git/Linux/idea命令快捷键总结(持续更新)
在开发过程中,会使用越来越多的命令,或快捷键,来帮助我们提高工作效率.本文记录了我在平时积累的常用命令,分享给大家. git命令 基本命令 set LESSCHARSET=utf-8 --idea T ...
随机推荐
- jQuery中的层级选择器
话不多说,请看效果: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> &l ...
- ARTS-S EN0001-In tech race with China, US universities may lose a vital edge
原文 The U.S. is still out in front of global rivals when it comes to innovation, but American univers ...
- Django异步任务线程池
当数据库数据量很大时(百万级),许多批量数据修改请求的响应会非常慢,一些不需要即时响应的任务可以放到后台的异步线程中完成,发起异步任务的请求就可以立即响应 选择用线程池的原因是:线程比进程更为可控.不 ...
- JS系列:js数据类型的转换
数据类型的转换[基本数据类型]数字 number字符串 string布尔 boolean空 null未定义 undefined[引用数据类型]对象 object普通对象 {}数组对象 [](Array ...
- ==和equals的深度分析
==的分析 1.对于基本数据类型,比较的是他们的具体内容是不是一样,跟他们的内存地址无关.举个栗子: public class Test{ public static void main(String ...
- Lamada表达式小技巧介绍
函数式编程 @FunctionalInterface interface Lf{ void dispaly(); } @FunctionalInterface为显示定义函数时编程接口,不符合函数式编程 ...
- python学习-def1
# 4.可变参数\return# 可变参数:参数个数不固定 .调用的时候来确定有几个参数.# 第一种:*args 在函数内部,是以元组的形式来表示.def my_args(*args): # 放在位置 ...
- Xcode 三方库管理工具 CocoaPods 的安装流程
1. 移除现有 Ruby 默认源: $ gem sources --remove https://rubygems.org/ 2. 使用新的 Ruby 源: $ gem sources -a http ...
- python并发之多进程
#mutiprocessing模块 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu_count()查看),在python中大部分情况需要使用多进程.Pytho ...
- WCF服务部署到IIS
WCF服务部署 一.将WCF服务部署到IIS上 1.首先检测电脑上是否安装了IIS,一般来说Win7以上系统自带IIS 2.下面进行IIS服务的开启设置: 控制面板=>打开或关闭Windos功 ...