1.创建版本库

git clone <url> #克隆远程版本库

git init #初始化本地版本库

通过 ls -ah 可以看到隐藏的.git目录

2.修改和提交

添加文件readme.txt

在项目的目录下新建一个readme.txt(注意不要使用windows自带的笔记本,用notepad++新建)

写一行文字 test 比较一下与之前有哪些不同?

git status #查看状态

git diff #查看变更内容

添加文件到Git仓库,分两步:

git add <file> #添加文件 git add . #添加所有文件

git commit -m <message> #提交所有更新过的文件

再在readme.txt添加一行,然后git add,git commit。

git log #查看提交历史

git commit --amend -m "your new message" #修改提交的注释

git add commit --amend #修改最后一次提交

git push <remote> <branch> #提交到远程分支

 3.版本回退

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

假如你想再回到刚才的版本

git reflog #查看每次提交的ID

git reset --hard commit_id #回到未来的版本

git checkout -- file #丢弃工作区的修改

git reset HEAD <file> #丢弃暂存区的修改到工作区

git stash #暂存工作区的修改内容

git stash pop #回到工作现场

git cherry-pick <commit> #在master分支上修复的bug,想要合并到当前dev分支

4.远程仓库

到github上新建一个仓库,如springboot_test

添加ssh key,如果没有则生成

ssh-keygen -t rsa -C "youremail@example.com"

把你本地id_rsa.pub里的内容添加进去

关联远程仓库,在本地执行:

git remote add origin https://github.com/littleCatBobi/springboot_test.git

然后执行提交到远程仓库,推送master分支的所有内容

 git push -u origin master

然后就可以在github上看到提交的代码了。

如果你要从远程克隆一个项目,执行 git clone命令就可以,找到你想克隆的项目。我的就是

git clone https://github.com/littleCatBobi/springboot_test.git

git remote -v #查看远程版本库信息

git pull #拉取远程代码

5.分支与标签

git checkout -b <new-branch>  #创建并切换到新分支

git branch #显示本地所有分支

git branch <new-branch> #创建新分支

合并到master分支

git switch/checkout master  #切换到master分支

git merge dev #合并dev分支到当前master分支

git branch -D <name> #删除本地分支

git tag #列出本地所有标签

git tag <tagname> #基于最新提交创建新标签

git tag -d <tagname> #删除标签

git rebase <branch> #衍合指定分支到当前分支,即把本地未push的分叉提交历史整理成直线

Git常用命令详解的更多相关文章

  1. Git 常用命令详解

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...

  2. Git 常用命令详解(二)

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...

  3. 【转】 Git 常用命令详解(二)----不错

    原文网址:http://blog.csdn.net/ithomer/article/details/7529022 Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如: ...

  4. 【Git】2. Git常用命令详解、版本切换原理

    一.新增文件 1.设置用户签名 签名的作用就是为了区分不同的人,方便查看版本的时候知道操作的人是谁.首次安装好git之后必须设置一下签名,否则无法提交代码. 另外,这里设置的签名跟你登录到远程仓的账号 ...

  5. [转]Git 常用命令详解

    史上最浅显易懂的Git教程 http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/ ht ...

  6. Git 常用命令详解(三)

    转自:http://www.cnblogs.com/1-2-3/archive/2010/07/18/git-commands.html

  7. Hexo系列(三) 常用命令详解

    Hexo 框架可以帮助我们快速创建一个属于自己的博客网站,熟悉 Hexo 框架提供的命令有利于我们管理博客 1.hexo init hexo init 命令用于初始化本地文件夹为网站的根目录 $ he ...

  8. Kubernetes,kubectl常用命令详解

    kubectl概述 祭出一张图,转载至 kubernetes-handbook/kubectl命令概述 ,可以对命令族有个整体的概念. 环境准备 允许master节点部署pod,使用命令如下: kub ...

  9. hbase shell基础和常用命令详解(转)

    HBase shell的基本用法 hbase提供了一个shell的终端给用户交互.使用命令hbase shell进入命令界面.通过执行 help可以看到命令的帮助信息. 以网上的一个学生成绩表的例子来 ...

随机推荐

  1. C++ const关键字以及static关键字

    const可以用来修饰类中的成员函数以及成员变量以及类的对象 1.const修饰成员函数: 该函数是只读函数,不允许修改任何成员变量,但是可以使用类中的任何成员变量: 不允许修改任何非static的类 ...

  2. python操作MySQL数据库(转)

    先来一个简单的例子吧: ? 1 2 3 4 5 6 7 8 9 10 import MySQLdb   try:     conn=MySQLdb.connect(host='localhost',u ...

  3. ObjectMapper用于将java对象转换为json格式数据以及JSONObject对象解析json格式数据

    ObjectMapper objectMapper = new ObjectMapper(); //反序列化的时候如果多了其他属性,不抛出异常 objectMapper.configure(Deser ...

  4. vue-$watch属性方法

    特性 https://www.cnblogs.com/widgetbox/p/8954162.html https://segmentfault.com/a/1190000012948175?utm_ ...

  5. web登录的session、cookie和token

    为什么会有登录这回事 首先这是因为HTTP是无状态的协议,所谓无状态就是在两次请求之间服务器并不会保存任何的数据,相当于你和一个人说一句话之后他就把你忘掉了.所以,登录就是用某种方法让服务器在多次请求 ...

  6. 第一章 PHP mySQL

    一,服务器环境搭建 1-1.Apache服务器.(端口号定义,http协议,开启和关闭) 服务器: 我们在浏览器浏览网页的时候,在地址栏中都会产生一个url.通过这个url,浏览器从互联网中找到一个网 ...

  7. ie8 下的半透明 background:rgba 与opacity失效 兼容办法

    fliter: filter: progid:DXImageTransform.Microsoft.Alpha(opacity=70);

  8. java中的运算符与表达式

    运算符与表达式 运算符分类: 0.赋值运算符 = 1.算数运算符 + - * / % 2.比较运算符 < > == <= >= != 3.逻辑运算符 & | ! &am ...

  9. Repeater循环页面上的控件

    List<string> list = new List<string>(); for (int k = 0; k < RepeaterList.Items.Count; ...

  10. Line 算法与deepwalk的对比 和个人理解

    用户的关注关系本身就是一个图结构,要从用户关注关系生成用户的embedding表示,其实就是做graph的emebding表示. deepwalk+word2vec 比较简单,效果也还可以.这种方法再 ...