Git成长进阶之路

一、Git是什么?

    Git是目前世界上最先进的分布式版本控制系统(没有之一,个人观点哈~)。

    Git有什么特点?简单来说就是:高端大气上档次!

    看完下面你就懂了~

    Linus一直痛恨的CVS及SVN都是集中式的版本控制系统,而Git是分布式版本控制系统,集中式和分布式版本控制系统有什么区别呢?

    大家先来看“集中式版本控制系统”:版本库是集中存放在中央服务器的,而我们干活的时候,用的都是自己的电脑,所以都要先从中央服务器取得最新的版本,然后干活,等你干完活了,然后把自己的活推送给中央服务器。

    再来看看“分布式版本控制系统”:首先,分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?比方说你在自己电脑上改了文件A,你的同事也在他的电脑上改了文件A,这时,你们俩之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

    最后我们来看看“集中式版本控制系统”和“分布式版本控制系统”对比,分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一个就可以了。而集中式版本控制系统的中央服务器要是出了问题,所有人都没法干活了。但是在实际使用分布式版本控制系统的时候,其实很少在两人之间的电脑上推送版本库的修改,因为可能你们俩不在一个局域网内,两台电脑互相访问不了,也可能今天你的同事病了,他的电脑压根没有开机。因此,分布式版本控制系统通常也有一台充当“中央服务器”的电脑,但这个服务器的作用仅仅是用来方便“交换”大家的修改,没有它大家也一样干活,只是交换修改不方便而已。

 

    关于Git的安装:

        (1)服务器搭建

            博主是Web前端开发,所以不用操心哈哈~~,一般来说都由后台人员或者SA帮你搞定。

        (2)客户端安装

            这个一般的IDE(ideal intellij、eclipse、vscode等)都有相关的插件,具体怎么使用这个就不细说了。我个人刚开始学的时候为了记住常用的Git指令,直接使用的小黑窗,你懂的。当然,等你熟悉使用了,在开发IDE里直接使用傻瓜式的界面化指令也不错,但是建议初学者老老实实用小黑窗敲指令,这样进步更快~~

*************************************************************************************************

二、Git新手入门必掌握指令(项目实例,请关注博主后续更新)

    1. git init    ***初始化Git仓库***

        这个好像没有啥特别注意和强调的~要知道一个参数,看下面给你详细说↓

        git init - bare  //使用--bare选项时,不再生成.git目录,而是只生成.git目录下面的版本历史记录文件,这些版本历史记录文件也不再存放在.git目录下面,而是直接存放在版本库的根目录下面.

 

    2.git --version    ***查看git版本***

        这个貌似没啥可说的,安装好之后查看自己Git版本~

 

    3. git config    ***设置用户信息***

        一般基本上设置用户名和email就OK,用户名是搭建服务器的人设置完公钥后发给你的使用账号~例子如下:

      git config --global user.name "xudc@ijiayi.org";

      git config --global user.email"xudc@ijiayi.org";

 

    4. git clone    ***克隆Git仓库***

        如果你使用SSH协议的话,还需要生成key哟,看下面↓

        生成密钥:ssh-keygen -t rsa -C "上面配置的user.name";

        注:如果不需要密码的话,连续3个回车。最后得到了两个文件:id_rsa和id_rsa.pub。一般Git会配合gitlab使用,此处的ras.pub里面的内容也需要配置到gitlab中去。

       git clone URL;

 

    5. git log    ***查看提交记录***

       git reflog    ***    ***

    6. git branch    ***git分支管理***

        git checkout    ***切换Git分支***

    7. git pull    ***从远程仓库拉取分支***

    8. git status    ***比较本地仓库中修改了哪些文件***

    9. git add    ***添加本地修改文件到缓存区***

    10. git commit    ***提交已添加到缓存区的修改文件**

    11. git merge     ***

    12. git push    ***推送本地分支到远程仓库***

    13. git diff    ***比较本地分支与远程分支的区别***

    14. git reset --hard HEAD    ***版本回退***

         git push -f (强制推送本地低版本仓库到原生高版本仓库)

*************************************************************************************************

三、Git其他应用实例

    1.ssh key协议时,多电脑共用一个key

        使用SSH key时,多台电脑生成的key不同,可以将某一台电脑的key(公钥和私钥)一起copy到其他电脑,这样就多台电脑可以同时使用了

    2.Git忽略文件.gitignore的使用

 除此之外,如果盆友们又更生僻的Git使用难题,大家去官网(https://git-scm.com/)读API吧。

 

*************************************************************************************************

文末,博主希望对浏览过的盆友有帮助的,给个?。希望大家提问题,互相交流进步~~

 

拾忆天下

同步简书地址:https://www.jianshu.com/p/915e9f1e7685

同步博客园地址:https://www.cnblogs.com/MaxQD/articles/10095094.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值