创建: 2017-04-05 17:04:03

        2017-04-24
更新: 2017-05-16
更新: 2017-06-27  完善git remote add 
更新: 2017-07-04  完善git pull origin master这种pull其他分支的
                             创建时间改为创建
                             增加commit与issue关联
                             删除远程仓库,push到其他远程仓库的分支(已有,加粗)
更新: 2017-09-02  增加rebase, 并且增加取消的说明(git rebase branch-name --abort)
更新: 2017-09-05  增加git reset 详细说明 http://blog.csdn.net/hudashi/article/details/7664464/
更新: 2017-10-28  增加git clean, git reflog show
更新: 2017-11-20  增加git commit --amend
更新: 2017-11-21  增加git rebase -i HEAD~2
更新: 2018-01-22 增加重命名本地分支 git branch (-m | -M) [<oldbranch>] <newbranch>
                          增加切换追踪的分支 git branch -u remote-name/branch-name
更新: 2019-02-12 补充 切换追踪的远程分支 的说明与例子
更新: 2019/03/18 补充git branch的option --all --remote
更新: 2019/05/18 补充切换跟踪分支的例
 
命令 含义 注释 
     
     
 git config ...   设置本地变量  
 git config --global ... 设置全局变量  
 git config --global --list  查看全局变量  --list = -l
 git config --list  查看所有变量  
     
     
     
     
 git clone [url] 克隆已有仓库 git clone [url] abc  abc为 别名(本地文件名)
 git add  追踪新文件或者把已修改文件暂存                                   
 git commit  将暂存文件提交到本地仓库(repository)  -a自动add,跳过上一步
 -m "..."直接添加信息
 关联issue 信息里面增加#issue编号
 修改最新commit git commit --amend
 git diff  查询变化  different;-staged显示已暂存的
 git status  查询文件状态(修改,暂存)  -s 或者--short后为通用简写
 git rm  删除文件并从暂存区也删除文件  -f 不知道什么用处,测试后没区别
 \*~  所有以~结尾的文件(后缀) \*后接的是后缀
 \*.log  所有以.log结尾的文件 \*后接的是后缀
 git mv file_from
file_to 
给文件改名并应用于git 相当于mv + git rm + git add
 git log   查看commit(提交)历史  -p 显示差异 -n 列出最近n次
 git reset HEAD  取消暂存的文件 尽量不要附加选项,危险
 git checkout --  撤销对文件的修改  尽量不用,老文件会直接覆盖新文件!不可撤销
     
git remote  查看已连接的远程仓库  -v 附加远程仓库地址
show [remote-name] 显示某一远程分支详情
 git remote rename  
   
   
 git remote add 别称 网址   新增远程仓库  git remote add origin ...
 git remote remove 别称 网址   删除远程仓库  
 git push origin :br-name   删除远程分支  git push -d origin test
 git push --delete origin test
 git push origin :test三个等价
 git push [] [] [tag-name]  提交标签  --tags 提交所有标签
 git push [remote-name] [branch-name]  将本地仓库推送到远程仓库  后两个默认origin和master
 git fetch
[remote-name] 
从远程仓库拉取(更新) 并不会合并到本地仓库,需要手动
git merge  branch name  合并fetch抓取到的信息到本地分支  
 git rebase branch-name  合并fetch抓取到的信息到本地分支   合并commit git rebase branch-name -i
HEAD~(前几次)

取消 git rebase --abort

git rebase -i HEAD~2 
合并commit

     
     
 git pull  从远程仓库拉取并合并本地分支  拉取其他分支
 git pull origin master
     
 git tag  显示所有标签  
 git tag  -l
 ""/''/
 检索标签  "v1*" = 'v1*' = v1*
 git tag -a  [tag-name] 创建附注标签  
 git tag [tag-name] 创建轻量标枪   
     
 git branch  显示当前所有分支

-v 显示所有分支最后一次提交
--merged 显示已合并分支,都可删除
--no-merged 显示未合并分支,不可删除。强制删除用-D
--v 查看所有本地分支分别跟踪的分支等情况

 -r (--remote) 显示远程分支
 -a (--all) 显示全部分支(local+remote)
 git branch [bran-name]  创建新分支  -d 删除分支
 git branch (-m | -M) [<oldbranch>] <newbranch>  重命名本地分支  
 git branch -u remote-name/branch-name

切换追踪的远程分支

(push等操作的远程对象)

git branch -u origin/new_branch
git branch -u origin/feature/hide_public_confirmation
 git checkout [bran-name]  移动HEAD到当前所在分支。切换分支  *指向当前所在分支
 git checkout -b [bran-name]  创建新分支并切换过去  git branch [bran-name]
 git checkout [bran-name]
 git checkout -b [branch-name]
[remote-name]/[branch-name]
 下拉并跟踪远程分支  git  checkout --track
[remote-name]/[branch-name]  简化写法
     
     
     
 git merge [bran-name] 将指定分支合并到当前分支   
     
 git reset --hard [num] 回滚到序列号所指的版本   [num]在这里指版本号
 git cherry-pick [num]  将其他分支的commit复制一份到当前分支  [num]在这里指版本号
     
 git clean -n/-f/-d  删除没有 git add 的 文件  -n 显示将要删除的文件和目录

-f 删除文件

-d 删除目录

 git
reflog show 
 显示所有commit  
     

git 基本命令详细解释的更多相关文章

  1. git使用详细介绍

    1. Git概念 1.1. Git库中由三部分组成        Git 仓库就是那个.git 目录,其中存放的是我们所提交的文档索引内容,Git 可基于文档索引内容对其所管理的文档进行内容追踪,从而 ...

  2. git使用详细过程

    1. Git概念 1.1. Git库中由三部分组成        Git 仓库就是那个.git 目录,其中存放的是我们所提交的文档索引内容,Git 可基于文档索引内容对其所管理的文档进行内容追踪,从而 ...

  3. Git基本命令行操作 (转)

    Git远程操作详解   作者: 阮一峰 Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和 ...

  4. 图解 Git 基本命令 merge 和 rebase

    Git 基本命令 merge 和 rebase,你真的了解吗? 前言 Git 中的分支合并是一个常见的使用场景. 仓库的 bugfix 分支修复完 bug 之后,要回合到主干分支,这时候两个分支需要合 ...

  5. git基本命令-直接上手使用

    git基本命令-直接上手使用 此篇为直接是使用git,如果想了解其原理和其他详细信息,请关注我,看其它相关文章 git创建仓库(初始化仓库) 使用当前目录作为仓库 git init // 执行该目录后 ...

  6. Git使用详细教程(一)

    很久不发博客,最近有兴趣想写点东西,但 Live Writer 不支持从Word复制图片,疯狂吐槽下 Git使用详细教程(一) Git使用详细教程(二) 该教程主要是Git与IntelliJ IDEA ...

  7. .htaccess语法之RewriteCond与RewriteRule指令格式详细解释

    htaccess语法之RewriteCond与RewriteRule指令格式详细解释 (2012-11-09 18:09:08) 转载▼ 标签:  htaccess it 分类: 网络 上文htacc ...

  8. cookie的详细解释

    突然看到网页上中英文切换的效果,不明白怎么弄得查了查 查到了cookie 并且附有详细解释 就copy留作 以后温习 http://blog.csdn.net/xidor/article/detail ...

  9. tar命令的详细解释

    tar命令的详细解释 标签: linuxfileoutputbashinputshell 2010-05-04 12:11 235881人阅读 评论(12) 收藏 举报  分类: linux/unix ...

随机推荐

  1. windows服务 MVC之@Html.Raw()用法 文件流的读写 简单工厂和工厂模式对比

    windows服务   public partial class Service1 : ServiceBase{ System.Threading.Timer recordTimer;public S ...

  2. Sublime Text使用

    安装Sublime Text Sublime 的安装比較简单,我们能够直接去官网http://www.sublimetext.com/,点击Download菜单.进入之后选择自己操作系统的进行下载安装 ...

  3. Linux fcntl函数详解

    功能描述:根据文件描述词来操作文件的特性. 文件控制函数          fcntl -- file control 头文件: #include <unistd.h> #include ...

  4. centos下部署项目问题

    最近写了商品管理的后台完成了一部分,用node+koa+mongodb搭建,现在想部署到自己的服务器上,部署的过程中遇到了一些坑.首先就是各种环境的搭建,搭建好了之后要把后台的代码传到服务器上运行,运 ...

  5. vue 计算属性与侦听器

    侦听器:顾名思义,就是用来监听数据变化用的.侦听器在vue实例中,定义变量watch来使用.监听新值newVal和旧值oldVal,具体使用方法如下: <!DOCTYPE html> &l ...

  6. peewee模块

    Peewee Python中数据库与ORM主要做这几件事: 数据库方面由程序员设计表关系,主要是1v1,1vN,NvN: ORM做数据类型映射,将数据库表示的char/int等类型映射成Python对 ...

  7. Marlin固件之—:基础入门与測试

    一.Marlin的简介 Marlin固件是一个3D打印的开源固件,3D打印固件有很多,Marlin最为健全和强大,当然相对也会复杂一些.使用Gcode控制爱.Gcode是数控机床等工控控制使用范围较广 ...

  8. node.js内存泄露问题记录

    先说一下.事情的来龙去脉. 公司开发一款游戏棋牌游戏,服务端的开发是IO密集型,开发的时候,考虑过使用python,java,node.js. 终于选择了node.js(node.js宣传的杀手功能. ...

  9. LeetCode(3)题解: Longest Palindromic Substring

    https://leetcode.com/problems/longest-palindromic-substring/ 题目: Given a string S, find the longest ...

  10. c3p0+spring

    1. 首先是jdbc.properties属性文件的编写,便于数据库移植: datasource.driverClassName=oracle.jdbc.driver.OracleDriverdata ...