1.安装
yum install git
2.创建版本库
git init
3.添加文件
git add file.txt
4.提交文件
git commit -m “新增文件”
5.仓库当前状态
git status
6.对比库文件和当前文件区别
git diff file.txt
7.查看版本历史记录
git log
git log --pretty=oneline #简化信息
git log --graph --pretty=oneline --abbrev-commit #查看分支历史
8.回退版本
git reset --hard HEAD^ #HEAD^:前一个版本,^^上上个版本 ~100:前100个版本
9.回退到指定版本
git reset --hard 126118164 #回退到这个版本号的地方
10.命令记录
git reflog
11. 回到上一次commit 或add的时候
git checkout -- file.txt
12.暂缓区的修改回退到工作区
git reset HEAD file.txt
13. 删除文件
git rm file.txt
git commit -m "remove file.txt"
14.链接远程github库
14.1创建SSH Key
在linux账户~下执行 ssh-keygen -t rsa -C "myvickcn@163.com"
邮箱是我的github账户
14.2 添加远程库
git remote add origin git@github.com:myvick/learngit.git #关联一个远程库
如果这个命令执行过,需要执行git remote rm origin
14.3 本地库推送到远程库
git push -u origin master #首次推送
git push origin master #以后推送
15.从远程克隆
git clone git@github.com:myvick/gitskills.git
16.分支管理
16.1 创建分支
git checkout -b dev # 创建并切换
或 git branch dev #创建分支 git checkout dev #切换分支,执行者两步。
16.2 查看分支
git branch #带*表示当前分支
16.3 合并分支
git merge dev #合并某分支到当前分支
注:Fast -forward: 快进模式,不保留合并记录
git merge --no-ff -m "备注" dev #普通合并,保留合并记录
16.4 删除分支
git branch -d dev
git branch -D feature-vulcan #强制删除分支
16.5 查看分支合并图
git log --graph
16.6 储藏工作场
git stash
git stash list #储藏列表
git stash apply #恢复
git stash drop #删除
git stash pop #恢复并删除
16.7 多人协作
git remote -v #查看远程库信息
git push origin master #推送到远程 git push origin dev
git clone git@github.com:michaelliao/learngit.git # 抓取分支
git branch --set-upstream dev origin/dev #设置本地dev分支和远程origin/dev分支的链接
git pull #更新远程最新的origin/dev
17.标签管理
17.1 创建标签
git tag v1.0 #当前最新的commit上创建标签
git tag v1.1 6224937 #指定历史commit id 创建标签
git tag -a v1.2 -m "备注" 6223344 #-a 标签名,-m 说明文字
git tag -s v1.3 -m "remark" #-s 私钥签名,可用PGP
17.2 查看标签信息
git show v1.0
17.3 删除标签
git tag -d v1.0
git push origin v1.1 #推送标签到远程
git push oright --tags #推送全部尚未推送到远程的本地标签
17.4 删除远程标签
git tag -d v1.0 #先删除本地标签
git push origin :refx/tags/v1.0 #远程删除标签
17.5 切换标签
git checkout v1.0
18.git配置
git config --global color.ui true #配置颜色
git config --global user.name "myvic" #配置名称
git config --global user.email "myvickcn@163.com" #配置邮箱
18.2 忽略特殊文件
在更目录下创建.gitignore 文件 配置如 : *.py
git add -f p.py #强制提交该文件,忽略配置
git check-ignore -v p.py #查看该文件被那条规则限制
19 配置别名
git config --global alias.st status
 
20:window 链接github
 
 
 
 
 
 
 
 
 
 
 
 
 

git命令详情的更多相关文章

  1. git命令的理解与扩展

    Git的模式如图: Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Repository:仓库区(或本地仓库) 一.新建代码库 # 查看gi ...

  2. git 命令行下浏览器tig使用记录

    git 命令行下浏览器tig使用记录 tig 是一款优化 git 命令行的工具,使 git 命令行更加的便捷人性化 .如果用习惯了,会上瘾. 以下是一些使用记录: 安装成功后,在 Repo 文件夹下, ...

  3. 一些有用的git命令清单

    以下是一些我常用的git命令清单 如果以下的命令不清晰细节,请看git的文档. 设置个人信息 git config --global user.name "John Doe" gi ...

  4. 颠覆Git 命令使用体验的神器 - tig

    颠覆 Git 命令使用体验的神器 -- tig     tig, 就是把 Git 这个单词倒过来念, 它是一个命令行工具, 日常使用中我用它来取代 Git 最高频的几个操作, 如 git log, g ...

  5. git命令手册

    以下内容是我在学习和研究Git时,对Git操作的特性.重点和注意事项的提取.精练和总结,可以做为Git操作的字典,方便大家查阅: 备注:本文会不断更新完善: 目录 一. 语法格式描述 二. git环境 ...

  6. git 命令常用笔记

    1. 全局操作 git --version //git 机器上是否存在 git init --bare project.git //服务端:初始化一个新的仓库 chown -R zhangsan:zh ...

  7. 初学Git——命令总结

    首先,感谢廖雪峰老师制作的Git教程:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b0 ...

  8. Git初探--笔记整理和Git命令详解

    几个重要的概念 首先先明确几个概念: WorkPlace : 工作区 Index: 暂存区 Repository: 本地仓库/版本库 Remote: 远程仓库 当在Remote(如Github)上面c ...

  9. 工作中常用的git命令

    一 常用Git命令 git clone:(区分SSH or HTTP) git init:初始化仓库 二 Git命令详解 Git Bash下,cd /c git clone,从远程Git版本库克隆一份 ...

随机推荐

  1. bzoj1878: [SDOI2009]HH的项链(主席树/离线+BIT)

     这题有离线和在线两种做法.  离线:将查询区间按左端点排序,预处理出所有数下一次的出现位置,一开始将所有第一次出现的数a[i]++,之后当扫到这个数的时候a[next[i]]++,相当于差分,给之后 ...

  2. [IOI2007]Miners 矿工配餐

    link 其实就是一个比较简单的$IOI$题.简单$dp$就行,设$5$维$dp$即可 最后在滚动一下,判一下可行性即可. #include<iostream> #include<c ...

  3. OLTP与OLAP比较【转】

    OLTP与OLAP的介绍 数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing).联机分析处理OLAP(On-Line Analytical ...

  4. MyEclipse安装FreeMarker插件

      MyEclipce8.6中安装FreeMarker插件,这绝对是最简单的方法.   步骤如下:   (一)打开http://sourceforge.net/projects/freemarker- ...

  5. ACE前摄器Proactor模式

    转载于:http://www.cnblogs.com/TianFang/archive/2006/12/31/608952.html 当 OS 平台支持异步操作时,一种高效而方便的实现高性能 Web ...

  6. MFC:CTime类和CTimeSpan类

    CTime类 CTime类表示日期和时间,上限是3000年12月31日,下限是1970年1月1日 12:00:00 AM GMT. CTime(); 构造一个未经初始化的CTime对象.此状态的CTi ...

  7. [freemarker篇]03.如何处理空值

    我想说的一点,我写的东西没有那么权威,这都是我实际开发中使用的,可能缺少很多! 例如这篇要说的如何处理空值,我发现我使用的跟网上很多写的不太一样,我也没有过多的去尝试网上的那么多写法! 抱歉,我只是写 ...

  8. [LeetCode] Simplify Path,文件路径简化,用栈来做

    Given an absolute path for a file (Unix-style), simplify it. For example,path = "/home/", ...

  9. 深入探索C++对象模型(一)

    再读<深入探索C++对象模型>笔记. 关于对象 C++在加入封装后(只含有数据成员和普通成员函数)的布局成本增加了多少? 答案是并没有增加布局成本.就像C struct一样,memeber ...

  10. map/reduce之间的shuffle,partition,combiner过程的详解

    Shuffle的本意是洗牌.混乱的意思,类似于java中的Collections.shuffle(List)方法,它会随机地打乱参数list里的元素顺序.MapReduce中的Shuffle过程.所谓 ...