昨天开始看一套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. wrap装饰器包

    import wrapt # without argument in decorator @wrapt.decorator def logging(wrapped, instance, args, k ...

  2. 访问一个HTTPS的网站的大致流程

    浏览器向服务器发送请求,请求中包括浏览器支持的协议,并附带一个随机数. 服务器收到请求后,选择某种非对称加密算法,把数字证书签名公钥.身份信息发送给浏览器,同时也附带一个随机数. 浏览器收到后,验证证 ...

  3. HTML、jsp页面中radio,checkbox,select数据回显功能,默认被选中问题

    最近常常遇到各种复选框.单选框.下拉框的默认被选中的问题,开始也是绞尽脑汁的想办法,今天写一篇学习总结的博文来写一下学习总结. 单选框(radio)默认被选中: 一.jstl技术进行回显 <in ...

  4. 判断是否是微信浏览器JavaScript代码

    function isWeiXin(){     var ua = window.navigator.userAgent.toLowerCase();     if(ua.match(/MicroMe ...

  5. 丢手绢问题(约瑟夫问题)的python实现

    约瑟夫问题是个有名的问题:N个人围成一圈,从第一个开始报数,第M个将被杀掉,最后剩下一个,其余人都将被杀掉. def fnA(p, personNum, cnt): times = cnt // pe ...

  6. linux 的常用命令---------第一阶段

    ls -a    列出所有的文件,包括以 . 开头的隐藏文件 ls -d    列出目录本身,并不包含目录中的文件 ls -h    人类易读 ls -h    长输出 man      帮助使用手册 ...

  7. Metapackage包

    Metapackage(功能包集)是把一些相近的功能模块. 软件包放到一起. ROS里常见的Metapacakge有: 2.Metapackage写法 CMakeLists.txt 写法如下: cma ...

  8. Mybatis的使用与流程解析

    1. 什么是MyBatis MyBatis的前身是Apache的一个开源项目ibatis,后来迁移到Google code就改名为MyBatis. 官方解释: MyBatis是一款优秀的持久层框架,它 ...

  9. css笔记--用户界面样式

    1.系统字体,系统颜色.根据关键字设置为系统某方面相同的字体和颜色 2.光标:鼠标移入时光标的不同显示方法,有十字键,手型:cursor:pointer;cursor:hand;要按顺序,cursor ...

  10. NAS、SAN、ISCSI存储

    前提补充:linux下只要能够mount存储盘到目录,则这个存储盘必定是格式化过了的 NAS1.客户端通过TCP/IP协议连接存储服务器的存储卷.2.客户端---网络交换机---存储服务器3.存储服务 ...