【Git

注:本文已迁移至CSDN,后续的更新也会在CSDN。

http://blog.csdn.net/houchaoqun_xmu/article/details/53813627

http://blog.csdn.net/houchaoqun_xmu

【本文仅凭个人经验进行整理,如有错误,欢迎指正,互相学习^^】

------------------------------------------------------------------------------------------------------------------------------

-- 上一篇博文 “如何简单便捷的搭建一个网站 - 基于Django ”【链接:http://www.cnblogs.com/XMU-hcq/p/6009533.html】 详细介绍了基于Django搭建一个网页开发环境;

-- 这篇博文主要介绍了基于Git方便有效的管理你的代码(环境搭建、配置以及简单的使用),希望对初学者有所帮助!

------------------------------------------------------------------------------------------------------------------------------

一、Git简介

1. Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

2. 分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。

3. 下图展示了经典的git开发过程(图来源于百度百科)

二、Git安装与配置(本人在64位的win7、win8.1和win10均尝试成功)

1. 准备安装包:

  1)【Git】Git-2.10.1-64-bit.exe(https://git-scm.com/download/win 

  2)【TortoiseGit】TortoiseGit-2.3.0.0-64bit.msi(https://tortoisegit.org/download/

2. 安装【Git】(参考:http://jingyan.baidu.com/article/90895e0fb3495f64ed6b0b50.html

  1)运行“Git-2.10.1-64-bit.exe”,点击下一步,直到出现(2),即【select components】;

  2)【select components】在Windows Explorer integration选项中将“Git Bash here”和“Git GUI here”打对勾;

    

  3)【Adjusting your PATH environment】选项中,默认即可;

    

  4)【Configuring the line ending conversions】选项中,解释如下:

    -- 第一个选项:如果是跨平台项目,在windows系统安装,选择;(本文选择第一项

    -- 第二个选项:如果是跨平台项目,在Unix系统安装,选择;

    -- 第三个选项:非跨平台项目,选择;

    

  5)如果还有剩下的步骤,直接点击next即可。

3. 安装【TortoiseGit】(参考网页http://jingyan.baidu.com/article/8cdccae97e2827315513cd55.html

  1)运行“TortoiseGit-2.3.0.0-64bit.msi”(TortoiseGit安装包);

  2)默认安装(直接点击next进行安装):

    -- 用户可根据需求选择要安装的项(本文默认全部安装);

    

    -- 用户可根据自身习惯修改安装路径:

     

  3)默认安装完成,右击鼠标查看新增功能项,至此【TortoiseGit】安装完毕。

    

    (上图表示:刚装好的时候是这样的界面,表示当前目录不是【Git的根目录】,即该目录可以进行Clone)

    

    (上图表示:当前目录是【Git】的根目录,即该目录已经是一个Git项目目录)

4. 配置【TortoiseGit】

  1)在你的要建的git目录下,右键TortoiseGit->settings,设置git路径,此处为“ C:My_softwaresGIT_20161013in ”;

  

  2)设置用户信息,右键TortioseGit->Settings->Git->Global;(该步骤的目的是“避免每次使用git都要输入账号和密码”)

  

    -- name:表示用户在【码云】上注册的用户名(昵称)。

    -- 邮箱:表示用户在【码云】上注册时填写的邮箱;

    

  3)生成ssh-rsa 密钥和公钥:

    -- 【打开Puttygen】开始 -> 所有程序 -> TortoiseGit -> PuTTYgen

    -- 设置密钥长度为1024,然后点击【generate】(此时所需较长的等待时间,可以先看往后的步骤) - 这次等了好几个小时- -

    -- 提醒:用户可以通过鼠标在窗口进行滑动,滑动得越快,密钥生成得愉快( 感谢博友的提醒!^^ )

      

    -- 输入密码,保存公钥和密钥,先不要关闭界面(没有输入密码也可以)

      -- 公钥:一组代码,用于配置【码云】账号;

      -- 私钥:一个文件,eg:【privateKey3.ppk】,需要保存到本地PC,使用Git进行Clone的时候需要用到。用于配置【TortoiseGit】,不同的PC可使用同一个私钥(前提是公钥也一致,可以使用同一个码云账号即可保证公钥一致)

      (分别保存 “public key” 和 “private key”)

      

    -- 登录注册【码云】账号(https://git.oschina.net/

      

    -- 登录git@osc(码云),个人资料 -> SSH公钥 -> 添加公钥

      

    -- 将【PuttyGen】产生的public key 复制key输入框(标题根据用户习惯自行拟定),最后点击确定;

5. 使用Git克隆工程到本地

  1)登录【码云】(https://git.oschina.net/login),到工程目录下【复制ssh链接】,也可以由工程的管理员给你ssh链接。

    

  2)在需要建git仓库的目录下,右键->Git Clone...

    -- 把ssh链接粘贴到URL;

    -- 打勾√【Load Putty key】,导入之前创建的密钥文件;

     

  3)【Git Clone】输入设置的密码,然后点击确定(注:如果之前的【TortoiseGit】配置好了,此处就不用输入账号密码了);

        

  4)【更新代码】用户可随时更新其他开发者上传的代码或者文件

    -- 在工程目录下(eg:TuringClass_OnLine)【右键鼠标】-->【Git sync...】-->【pull】,如果提示“success”则更新成功,否则出现冲突

    -- 冲突:可能是本地的代码与远程服务器的代码出现冲突 --> 相同文件,相同位置的代码,本地的代码与远程的代码不一致(此处不具体展开冲突的分析,后续遇到问题可以提出来)

  5)【上传代码】用户可上传自己的代码或者文件到远程仓库,本文的工程目录为【D:16_Grade_XMUCode_XMUTuringClass_OnLine】

    -- 在工程目录下【右键鼠标】-->【Git Commit -> "master"...】-->【填写message(总结此次更新的要点),选中你所需要更新的文件】-->【Commit】-->【push】-->【ok】

    

6. 经验之谈

  1)由【PuTTY】生成的秘钥包含公钥和私钥,一个【码云】账号需要配置一组秘钥(公钥和私钥);

  2)【不同电脑使用同一组 “TortoiseGit” 账号】不同的电脑配置的Git可以使用同一个【码云】账号(保证了公钥一样),【TortoiseGit】配置一样的账号,如

    -- 笔记本的【TortoiseGit】配置的账号为:

      [user]
        name = houchaoqun
        email = 836999690@qq.com

    -- 笔记本使用私钥A(保证了私钥一样);

    -- 实验室的台式机的【TortoiseGit】配置的和笔记本的相同;此时笔记本和台式机都可以使用Git进行同步(台式机也是用私钥A)

    -- 因为PuTTY生成公钥和私钥所需的时间较长,因此用户可以使用一组秘钥配置不用PC的Git! 

------------------------------------------------------------------------------------------------------------------------------

本文根据本人开发经验进行总结和整理,如有发现不妥的地方,还望指正,互相学习!

------------------------------------------------------------------------------------------------------------------------------

原文地址:https://www.cnblogs.com/XMU-hcq/p/6016955.html