分享

谈谈分布式版本管理工具GIT

 股海无涯苦作舟 2021-11-11

一.主流的版本管理工具

目前在企业中比较主流的版本管理工具有:GIT、SVN、CVS等等。

二.什么是Git?

Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

三.Git与SVN的的主要区别?

Git是分布式版本控制系统,那么它不但和SVN一样有中央服务器,而且每个人的电脑也是一个完整的版本库,这样,工作的时候联网就不是必须的了,因为版本可以先在自己的电脑上进行管理。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给中央服务器,然后再重新去拉下代码,就可以互相看到对方的修改了。

SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就纳闷了。

四.如何安装Git?

  1. windows下安装git

    在网上下载如下图所示的安装文件

    图片

进行默认安装以后,就会在开始菜单中找到如下图所示的客户端快捷方式

图片

2. linux下安装git

sudo yum -y install git

安装成功后,还需要进行如下设置:

因为git是分布式版本控制系统,所以安装成功首先设置一个用户名和一个邮箱作为一个标识.

图片

注意:git config –global 参数,有了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然你也可以对某个仓库指定的不同的用户名和邮箱。

五.Git的基本操作

git的工作图解

图片

版本库又名仓库,英文名repository,你可以简单的理解一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改,删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻还可以将文件”还原”.

创建版本库(初始化)

git init

这时候你当前目录下会多一个.git的目录,这个目录是Git来跟踪管理版本的,没事千万不要手动乱改这个目录里面的文件,否则会把git仓库给破坏了.

注意:首先要明确下,所有的版本控制系统,只能跟踪文本文件的改动,比如txt文件,网页,所有程序的代码等,Git也不列外,版本控制系统可以告诉你每次的改动,但是图片,视频这些二进制文件,虽能也能由版本控制系统管理,但没法跟踪文件的变化,只能把二进制文件每次改动串起来,也就是知道图片从1kb变成2kb,但是到底改了啥,版本控制也不知道。

  1. 添加文件到暂存区

    git add fileName1,fileName2...
  2. 提交暂存区文件到远程仓库

    git commit -m 'commit description'\
  3. 查看暂存区状态

    git status
  4. 查看暂存区中代码的改变

    git diff fileName
  5. 查看暂存区的提交日志

    git log
  6. 回退已提交到暂存区但尚未push到远程仓库的代码

    git reset --hard commit_version

    其中commit_version就是通过日志看到的每次提交的全局唯一版本号

  7. 回退到上一版本

    git reset --hard HEAD^
  8. 查看暂存区内容

    git reflog
  9. 查看当前分支,其中前面有*符号的表示当前分支

    git branch
  10. 切换分支

    git checkout branchName
  11. 新建分支

    git checkout -b newBranchName
  12. 合并分支

    git merge branchName
  13. 删除分支

    git branch -d branchName
  14. 添加远程仓库位置

    git remote add origin remote_url

    这样我们就指定了当前git的远程仓库。

  15. push本地代码到远程仓库

    git push origin master
  16. 克隆远程仓库代码到本地

    git clone remote_url
  17. 隐藏本地修改到缓存区

    git stash
  18. 恢复缓存区中的修改

恢复修改,且不删除stash内容

git stash apply

恢复以后,直接删除stash内容

git stash pop

19. 查看远程仓库信息

git remote

20. 查看远程仓库的详细信息

git remote -v

21. 拉取远端最新代码

git pull

六.总结

到这里,我们就对git的使用以及与svn的不同有了一个大致的了解,这可以帮助我们很好的使用git,并且让我们可以应对大多数开发中使用的情况,下次有机会我们再来聊一聊gitflow以及我们公司使用的变种来更好地促进团队协助开发以及分支管理。


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多