昨天开始看一套java接口自动化的视频,今天看到的一章是关于git这个工具使用的,上大学那会用过svn作为版本管理工具,包括现在所在的公司,用的也还是svn进行管理。其实老早就听闻过Git,Github,但就是一直没去了解。也就是在18年初寒假那会看一个linux视频时,里面有讲到如何在linux上面配置git,但我也是一看就过了。

  现在看的是Java接口自动化的视频,里面老师也介绍了这个工具会在课程中使用到,所以也刚好趁这个机会跟着耍耍。

  GitHub的特点:

  1. 开源的分布式版本管理系统
  2. 开源项目集中的代码库
  3. 所有略有规模的公司都在使用

  GitHub的功能介绍:

  1. 记录多个版本
  2. 查看历史版本,可以进行版本回退和前进的控制
  3. 多端共享代码,自动合并

  GitHub和SVN

  1. SVN版本集中管理,所有的代码都在中央服务器上
  2. Git去中心化,每个服务器上都有一个完整的代码库

  *Git客户端本地与GitHub服务端进行交互,可以通过配置sshkey进行交互,操作时就不用输入用户名和密码了,配置sshkey公文密钥的步骤:

  打开Git命令行,

  1. 生成key: ssh-keygen -t rsa -C "邮箱地址"
  2. cd  ~/.ssh (用户目录下的.ssh文件夹)
  3. 复制id_rsa_pub的公钥内容到github网站上(在setting-->SSH and GPG keys中)

  Git的一些常用命令

  代码提交

  添加指定文件到暂存区

  git add [file1] [file2]...

  添加当前目录的所有文件到暂存区

  git add.

  提交暂存区到仓库区

  git commit -m [message]

  提交暂存区的指定文件到仓库区

  git commit [file1][file2]... -m [message]

  更新远程仓库

  git remote update

  取回远程仓库的变化,并与本地分支合并

  git  pull  [remote][branch]

  上传本地分支到远程仓库

  git push [remote][branch]

  

  分支操作

  创建分支

  git branch [branch-name]

  切换分支

  git checkout [branch-name]

  删除分支

  git branch -d [branch-name]

  删除分支(远程仓库)

  git push origin -delete [branch-name]

  版本回退

    回退到上一版本

git reset --hard  HEAD^

  回退到指定版本

  git reset --hard [版本号]

  查看版本记录,得到版本号

  git reflog

  解决分支合并冲突

  合并分支命令

  git merge [branch-name]

  合并后出现冲突部分,Git会用<<<<<<<,=======,>>>>>>>标记出不同分支的内容。

  小结:当Git无法自动合并分支的时候,就必须首先解决冲突。解决冲突后再次提交,合并完成。解决冲突就是把Git合并失败的文件手动编辑成我们希望的内容,之后再提交。

 

  一篇对于新手来说很实用的博客https://blog.csdn.net/autfish/article/details/52513465,Mark

  

  

 

  

Git工具使用小结的更多相关文章

  1. 转载:Hadoop排序工具用法小结

    本文转载自Silhouette的文章,原文地址:http://www.dreamingfish123.info/?p=1102 Hadoop排序工具用法小结 发表于 2014 年 8 月 25 日 由 ...

  2. java keytool证书工具使用小结

    java keytool证书工具使用小结 在Security编程中,有几种典型的密码交换信息文件格式: DER-encoded certificate: .cer, .crt    PEM-encod ...

  3. 【转】第 02 天:在 Windows 平台必裝的三套 Git 工具

    原文网址:https://github.com/doggy8088/Learn-Git-in-30-days/blob/master/docs/02%20%E5%9C%A8%20Windows%20% ...

  4. windows中使用Git工具连接GitHub(配置篇)

    Git在源码管理领域目前占很大的比重了,而且开源的项目很多都转到GitHub上面了.例如:jQuery, reddit, Sparkle, curl, Ruby on Rails, node.js,  ...

  5. Git详解之六 Git工具(转)

    Git 工具 现在,你已经学习了管理或者维护 Git 仓库,实现代码控制所需的大多数日常命令和工作流程.你已经完成了跟踪和提交文件的基本任务,并且发挥了暂存区和轻量级的特性分支及合并的威力. 接下来你 ...

  6. Git详解之六:Git工具

    Git 工具 现在,你已经学习了管理或者维护 Git 仓库,实现代码控制所需的大多数日常命令和工作流程.你已经完成了跟踪和提交文件的基本任务,并且发挥了暂存区和轻量级的特性分支及合并的威力.(伯乐在线 ...

  7. 使用git工具将项目上传到github

    注册github账号 https://github.com/ 安装git工具: https://git-for-windows.github.io/ 上面的准备工作完成后,现在开始操作. 一.进入gi ...

  8. Git工具的使用教程

    Git 是一种版本控制工具,也叫作版本管理软件(分布式管理软件).这里介绍Git的基本使用步骤,关于 Git 更详细的介绍,读者可以参考其官方网站提供的文档. 1  安装Git 在Ubuntu系统中安 ...

  9. 使用git工具快速push项目到github(精简)

    Dear Weber ,相信有很多刚开始接触前端的程序猿,在刚接触到git工具传项目到github上时会遇到一些问题,那么下面的话呢,我就整理一下一个大致的思路提供给大家参考: 工具:git (自行下 ...

随机推荐

  1. September 10th 2017 Week 37th Sunday

    Dream most deep place, only then the smile is not tired. 梦的最深处,只有微笑不累. Everyday I expect I can go to ...

  2. Mongo.exe 无法定位程序输入点terminate于动态链接库 *.dll的解决办法

    Win7 或者Winserver 上安装新版的Mongo后,总是提示如上问题,可使用如下方法解决: 一是系统更新到SP1,并安装了KB2999226这个更新包(重要): 二是安装安装 Visual C ...

  3. [EffectiveC++]item32:确定你的public继承模塑出is-a关系

  4. randint(1,100) s.add(n) 集合的去重复性

  5. sql 模糊查询优化

    在sql语句中使用 like模糊查询时,应该尽量避免%%,因为模糊查询是比较慢的,当出现这样的情况时,应该考虑优化. 举个例子:我在表中查询2012 年创建的记录 SELECT * FROM `com ...

  6. 【译文】MySQL InnoDB 事物模型

    InnoDB事物模型 事物的隔离级别 自动提交,提交和回滚 一致的非锁定读 锁定读 在InnoDB事物模型中,目标是为了多版本数据库和传统的俩段锁协议的最佳实践(多版本并发控制).InnoDB在行级别 ...

  7. SQLException: Io 异常: Connection refused ERR=12514 ERR=1153异常处理过程

    solr更新索引连接数据库地址时发生的错误,数据库拒绝连接,经过调查是因为solr的data-config.xml 文件中配置数据库连接的地方,不应该配置数据库实例名而应该是数据库server_nam ...

  8. BZOJ5418:[NOI2018]屠龙勇士(exCRT,exgcd,set)

    Description Input Output Sample Input 23 33 5 74 6 107 3 91 9 10003 23 5 64 8 71 1 11 1 Sample Outpu ...

  9. 从ByteBuffer中解析整数

    前言   在解析Redis返回的消息中,有类似 $5\r\nredis\r\n的数据返回,当我们解析这种数据的时候,先解析出5这个数字,然后在取后续的5长度的字符串.当时在解析数字这块卡住了,于是看了 ...

  10. virtualbox+vagrant学习-2(command cli)-22-vagrant validate命令

    Validate 格式: vagrant validate [options] 该命令用于验证你的Vagrantfile文件 userdeMacBook-Pro:~ user$ vagrant val ...