Git

1、Git

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

  下图就是分布式版本控制工具管理方式:

     

2、git工作流程

  一般工作流程如下:

    1.从远程仓库中克隆 Git 资源作为本地仓库。

    2.从本地仓库中checkout代码然后进行代码修改

    3.在提交前先将代码提交到暂存区。

    4.提交修改。提交到本地仓库。本地仓库中保存修改的各个历史版本。

    5.在修改完成后,需要和团队成员共享代码时,可以将代码push到远程仓库。

  下图展示了 Git 的工作流程:

  

3、Git的安装

  3.1 软件下载

    下载地址:https://git-scm.com/downloads

    

  3.2 安装操作

    

  3.3 简体中文设置

     

4、使用git管理文件版本

  4.1 创建版本库

    什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。由于git是分布式版本管理工具,所以git在不需要联网的情况下也具有完整的版本管理能力。

  (1)新建文件夹GitTest

    

  (2)使用命令创建仓库:git init 

     

  (3)概念

    版本库:“.git”目录就是版本库,将来文件都需要保存到版本库中。

    工作目录:包含“.git”目录的目录,也就是.git目录的上一级目录就是工作目录。只有工作目录中的文件才能保存到版本库中。

5、添加文件

  5.1 新建txt文件

    

  5.2 TortoiseGit ---> 添加

    

  5.3 添加文件暂存区(添加完成文件会有一个蓝色‘+’号标识) 

    

    

   5.4 从暂存区添加到本地仓库(成功后文件的蓝色 '+' 号变成绿色‘√’号)

    

     

     

    

6、修改文件

  6.1  修改完毕后需要再一次进行提交

    

7、删除文件

  7.1 删除文件操作需要再一次进行提交  

    

8、还原文件

  8.1 在HelloGit文件进行修改不用提交便可还原  

  

 9、将工程提交到版本库

  9.1将参考资料中的工程project复制到工作目录中

    

   9.2 设置忽略文件或文件夹

    

    

    

  9.3 上传到本地仓库步骤同上

10、远程仓库 

  常用的远程仓库就是github:https://github.com/, 需要创建用户  

  10.1添加远程库

   (1)github上创建仓库

    

     

10.2 ssh协议

  (1) 什么是ssh

    SSH 为 Secure Shell(安全外壳协议)的缩写,由 IETF 的网络小组(Network Working Group)所制定。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。

  (2)shh密钥生成 ssh-keygen -t rsa

    

   执行命令完成后,在window本地用户.ssh目录C:Users用户名.ssh下面生成如下名称的公钥和私钥

    

     (3)ssh密钥配置

    

     

     

10.3 同步到远程仓库  

  两条命令:

  git remote add origin git@github.com:sublun/mytest.git

  git push -u origin master

   

     

     

 10.4 使用TortoiseGit同步

  

   

     Url,推送URL:远程仓库的地址

  (1)推送

  

     

  (2)拉取,须先上传一个文件到远程仓库

  

    

       

     

     

10.5从远程仓库克隆

      

   

原文地址:https://www.cnblogs.com/Zzzzn/p/12085028.html