Git安装与基本操作总结

一、版本控制工具

1、集中式

     N个文件放到一个中心服务器上。只要能连上中心服务器,就可以提交或download文件。CVS和SVN都是集中式版本管理工具

     但集中式存在一定的局限性,只有连接上中心服务器,才可以进行文件管理。

2、分布式

     每一个拥有版本库的人都可以在不连网的情况下,进行代码提交。在效率上比集中式高很多。Git

 

二、Git的安装

1、Windows环境

     直接在github官网下载github安装即可。

2、linux环境

     使用yum installgit命令执行安装。安装完成后执行git –version 或git –help查看git版本和帮助命令

   Git安装与基本操作总结_第1张图片     

三、Git常用操作

1、创建项目

     在github上创建项目,复制项目url  ,到linux上执行gitclone url命令。将该项目克隆到linux中

Git安装与基本操作总结_第2张图片

2、查看git当前状态

     使用git status 可查看git 当前文件状态,例如有哪些文件已更新但尚未被提交等。

3、修改文件并查看文件状态

     例如修改readme ,同时添加diary文件,执行gitstatus 便提示该两个文件的状态:readme 文件被修改但尚未提交 ,建议使用git add 命令添加;dairy 文件新添加,建议使用git add 命令添加

Git安装与基本操作总结_第3张图片

4、提交文件

     例如添加diary文件,并执行commit命令 ,提示也可执行git reset diary 命令,撤销对diary文件的操作

Git安装与基本操作总结_第4张图片

     此时可选择执行git commit命令,提交该修改文件。同时会弹出要求补充关于本次提交的日志记录。填写好保存即可。

     再次使用git status 发现diary文件已提交。无需进行版本操作

 Git安装与基本操作总结_第5张图片

5、将git上的修改同步到github

     返回github ,并未记录diary文件的此次提交。原因是上面所有操作仅停留在本地工作区,并未提交到github上来进行维护。当本地服务器挂掉了,那本地工作区提交的内容就无法找回,为了避免,所以使用git push 命令,将文件发布到github上。好处在于可防止文件丢失同时也方便其他小伙伴来获取文件内容

      笔者在执行github同步时有两个常见错误,解决方案如下:

1) error 403 服务器拒绝请求

      解决方案:修改vim .git/config 将 https://github.com/linxi1209/test.git 修改为如下 

 Git安装与基本操作总结_第6张图片

 2)Gtk-WARNING 

      解决方案:执行 unset SSH_ASKPASS  或echo 'unsetSSH_ASKPASS' >> ~/.bashrc && source~/.bashrc

 Git安装与基本操作总结_第7张图片

      再次执行git push ,输入git password,同步成功。此时,在github上可见当前2次修改后提交的文件及日志记录

Git安装与基本操作总结_第8张图片

四、Git Github Gitlab的关系

Git

      版本控制工具,作为一个分布式的版本控制系统,在Git中并不存在主库这样的概念,每一份复制出的库都可以独立使用,任何两个库之间的不一致之处都可以进行合并。

Github

      一个网站,提供给用户空间创建git仓储,保存用户的一些数据文档或者代码等。作为开源代码库以及版本控制系统,Github目前拥有140多万开发者用户。

      随着越来越多的应用程序转移到了云上,Github已经成为了管理软件开发以及发现已有代码的首选方法。
      GitHub可以托管各种git库,并提供一个web界面,但与其它像 SourceForge或Google Code这样的服务不同,GitHub的独特卖点在于从另外一个项目进行分支的简易性。为一个项目贡献代码非常简单:首先点击项目站点的“fork”的按钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的“pull request”机制向项目负责人申请代码合并。已经有人将GitHub称为代码玩家的MySpace

GitLab

      基于Git的项目管理软件,GitLab 是一个用于仓库管理系统的开源项目。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。

      Github和Gitlab都是基于git的,可以说是git的衍生品。




你可能感兴趣的:(Git安装与基本操作总结)