,配置用户名和邮箱

$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"

,把一个文件夹初始化为git仓库

mkdir lg
git init

,查看当前仓库的状态 git status

,放到暂存区 git add readme.txt

,提交到仓库 git commit -m "init project"


,查看提交历史,使用git log

加参数显示更容易阅读的信息git log --pretty=oneline

使用git reflog 查看命令历史,以回到未来版本

,在提交的版本之间切换git reset --hard commit_id

回到上一个版本git reset --hard HEAD^

,查看工作区与版本库之间的区别 git diff HEAD -- readme.txt

,撤消刚才在工作区的修改 git checkout -- readme.txt

这个是如果放到了暂存区,就从暂存区里面恢复,如果没有,就直接从版本库里面恢复。

,从版本库里面撤消修改 第1步,git reset HEAD readme.txt 第2步,git checkout -- readme.txt

就是改了工作区的内容,还add到暂存区了。上面的命令会把最新的版本库里里面的readme.txt文件放到暂存区,然后再从暂存区里面恢复。

,删除文件 git rm test.txt

,重命名(移动文件) git mv test.txt t.txt ,如果没有使用git mv命令的话,就先git add t.txt,然后git rm test.txt


,生成SSHkey ssh-keygen -t rsa -C "xxx@qq.com" 在git远程仓库上面把id_rsa.pub的内容加上去

,把当前仓库与远程仓库关联起来 git remote add origin git@github.com:nimeiz/lg.git

,查看远程库信息 git remote,使用git remote -v查看更详细的信息

,往远程仓库上推送内容 git push origin master,可以使用git push -u origin master在第一次推送时把本地与远程的master分支关联起来,在以后的使用是可以简化命令

,从远程库克隆仓库下来 git clone git@github.com:nimeiz/lg.git

,查看分支 git branch

,切换分支 git checkout -b dev 意思是创建并切换到dev,相当于git branch dev,git checkout dev

,把dev分支合并到master分支上

git checkout master
git merge dev

,删除dev分支 git branch -d dev 强制删除一个分支git branch -D feature-xx

,解决合并分支时的冲突 1,手动修改有冲突的文件,2,git add xxx.txt,git commit -m "conflict fixed" 就完成了

,在log中查看分支合并图 git log --graph

,使每次合并有记录 git merge --no-ff -m "merge with no-ff" dev

,常用分支策略 master做为最稳定的主版本,dev测试版本,再下面的分支开发

,保存当前工作区现场 git stash

,恢复工作现场 git stash apply恢复,git stash drop删除

=> git stash pop 恢复并且删除

,查看stash内容 git stash list 恢复到指定stash:git stash apply stash@{0}

,推送dev分支 git push origin dev

,远程库的分支 git checkout -b dev origin/dev 创建远程origin的dev分支到本地

,指定本地dev与远程origin/dev的链接 git branch --set-upstream dev origin/devgit pull提示"no tracking information"时用到

,往远程push出现冲突 1,git pull将远程的内容取下来,2,手动解决冲突,3,commit,4,git push origin dev再次推送


,创建标签 git tag -a v0.1 -m "version 0.1 released" 328923

使用 git log --pretty=oneline --abbrev-commit 查看commit_id

,查看标签 git tag

,删除标签 git tag -d v0.1

,推送标签 git push origin v1.0是推送v1.0这个标签,

git push origin --tags是推送所有本地标签到远程

,删除远程的标签 先删除本地的标签git tag -d v0.1

再从远程删除git push origin :refs/tags/v0.1

,本地仓库关联多个远程仓库

git remote rm origin
git remote add github git@github.com:nimeiz/lg.git
git remote add gitee git@gitee.com:nimeiz/lg.git

意思就是 把默认的远程库名origin 使用githubgitee给替换掉

推送的时候使用相对应的远程库名就好了

git push github master
git push gitee master

,配置git命令的别名

git的配置文件在~/.gitconfig里面

s表示status,用ch表示checkout,用co表示commitbr表示branch

unstage表示git reset HEAD file,美化后的log

git config --global alias.s status
git config --global alias.ch checkout
git config --global alias.co commit
git config --global alias.br branch
git config --global alias.unstage 'reset HEAD'
git config --global alias.last 'log -1'
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

GIT命令一页纸的更多相关文章

  1. Git & Github 一页简明笔记

    由于小组工程需要使用git&github的版本控制来协作,但我对其使用并不熟悉,特此写篇一页的笔记放在手边,备随时查阅. 相信这种一页的简明笔记,对大家也是有帮助的.我的笔记总结自廖雪峰的Gi ...

  2. 我 Git 命令列表 (1)【转】

    转自:http://www.microsofttranslator.com/bv.aspx?from=en&to=zh-CHS&a=http%3A%2F%2Fvincenttam.gi ...

  3. git 命令整理

    记录一些git 命令,以便自己以后查阅 基本命令   1.git add (保存工作区的变动到暂存区) git add . 和git add -A把整个工作区添加到暂存区 2.git commit ( ...

  4. Git & Github 一页简明笔记(转)main

    由于小组工程需要使用git&github的版本控制来协作,但我对其使用并不熟悉,特此写篇一页的笔记放在手边,备随时查阅. 使用方法:常用命令供随时查阅,其余内容供新手了解. 0. 常用命令一览 ...

  5. 一天工作所用到的Git命令

    一天工作所用到的Git命令 像大多数新手一样,我一开始是在网上搜索 Git 命令,然后把答案复制粘贴,并没有真正理解它们究竟做了什么. 后来我曾经想过:"如果有一个最常见的 Git 命令的列 ...

  6. git命令的理解与扩展

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

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

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

  8. 工作所用的日常 Git 命令

    几乎每个开发人员都在使用 Git,当然很可能是 GitHub.但大多数开发者大概有 99% 的时间只是使用这三个命令: #使用命令git add <file>,将文件添加到暂存区 git ...

  9. 源代码管理之Git命令的使用

    目录 02.源代码管理之Git命令的使用 2.Git命令行演练-个人开发 2.1 如何学习git指令 2.2 初始化创建本地仓库 2.3 个人开发基本演练 2.4 Git的基本常识 3.Git命令行演 ...

随机推荐

  1. 网页设计——2. html入门

    开始正式的课程讲解了,首先来看看课程体系: Java EE(java 企业应用程序版本) java2 有三个版本:J2 SE(标准版),J2 EE(企业版).J2 ME(微缩版). 我们要掌握J2EE ...

  2. C#使用ManagementObjectSearcher来获取系统信息时会有out of memory的异常

    在开发环境下,时不时出现out of memory的异常,最后是在服务界面重新启动 Windows Management Instrumentation后就好了.

  3. Redis的简单使用和介绍

    1.什么是NoSQL     NoSQL   =   Not Only  SQL     非关系型的数据库      2. 为什么需要NoSQL     High performance  高并发读写 ...

  4. Bzoj 4950

    Description 那是春日里一个天气晴朗的好日子,你准备去见见你的老朋友Patrick,也是你之前的犯罪同伙.Patrick在编程竞赛上豪赌输掉了一大笔钱,所以他需要再干一票.为此他需要你的帮助 ...

  5. SQL基础教程读书笔记-2

    4 数据更新 4.1数据的插入 1.清单{①列清单 ②值清单列清单和值清单的数量必须保持一致.原则上,执行一次INSERT语句会插入一行数据对表进行全列INSERT时,可以省略表名后的列清单2.插入默 ...

  6. node-koa搭建MVC/RESTful API项目

    本文将介绍如何基于node-koa搭建一个完整的mvc及restAPI的项目,项目封装了路由.模板引擎. 静态文件加载等基本功能:首先介绍项目的安装启动及目录结构说明,然后通过一个简单的登录页说明mv ...

  7. hdu4416 Good Article Good sentence (后缀数组)

    题意:问a串中有多少种字符串集合B中没有的连续子串. a的长度10^5,B中的总长度为不超过10^5. 解法:后缀数组题目:后缀数组能够非常easy算出来一个串中有多少种子串. 把a和B集合连起来.求 ...

  8. Ubuntu使用之Svn命令小技巧

    注: [svn Path]:是指要代替码分支的server绝对路径 [Path]:是指终端相对当前文件夹的相对路径.假设是在当前文件夹下,就省略路径 ①.取svnserver的代码: svn co [ ...

  9. C++11新特性应用--介绍几个新增的便利算法(不更改容器中元素顺序的算法)

    总所周知.C++ STL中有个头文件,名为algorithm.即算法的意思. The header<algorithm>defines a collection of functions ...

  10. Java -Xms -Xmx -Xss -XX:MaxNewSize -XX:MaxPermSize含义记录

    出现java.lang.OutOfMemoryError异常时,常使用的方法便是将例如以下配置语句: -Xms512m -Xmx512m -Xss1024k -XX:MaxNewSize=256M - ...