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

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

-- 上一篇博文 “如何简单便捷的搭建一个网站 - 基于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_softwares\GIT_20161013\bin ”;

  

  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_XMU\Code_XMU\TuringClass_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!

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

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

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

【Git - 基础篇】如何快速有效的管理你的代码 - 安装和配置的更多相关文章

  1. Git——基础篇

    Git--基础篇 Git简而言之就是个版本控制工具,用于跟踪和管理代码的工具. 版本控制 本地版本控制 就是我们自己本地对文档进行保存文件的每一个修改版本的记录. 集中式版本控制--SVN 有一个远程 ...

  2. Git基础篇

    对于Git的一些基础了解,安装,里面的一些名词,这里就不做介绍了.主要记录怎么使用GIt. 本篇介绍: 配置个人信息        生成本地仓库并与远程库相连        添加SSH秘钥       ...

  3. Qt入门之基础篇(1):Qt4及Qt5的下载与安装

    转载请注明出处:CN_Simo. 导语: Qt是一个跨平台的C++图形界面应用程序框架.它提供给开发者建立图形用户界面所需的功能,广泛用于开发GUI程序,也可用于开发非GUI程序.Qt很容易扩展,并且 ...

  4. Qt入门之基础篇 ( 一 ) :Qt4及Qt5的下载与安装

    转载请注明出处:CN_Simo. 导语: Qt是一个跨平台的C++图形界面应用程序框架.它提供给开发者建立图形用户界面所需的功能,广泛用于开发GUI程序,也可用于开发非GUI程序.Qt很容易扩展,并且 ...

  5. 数据库之mysql篇(1)—— 数据库管理系统简介/mysql的安装、配置

    说mysql之前,还是先说说数据库. 什么是数据库: 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后 ...

  6. SpringBoot基础篇-SpringBoot快速入门

    SpringBoot基础 学习目标: 能够理解Spring的优缺点 能够理解SpringBoot的特点 能够理解SpringBoot的核心功能 能够搭建SpringBoot的环境 能够完成applic ...

  7. 关于Eclipse使用Git基础篇

    一:Git的下载与安装与基本使用 1.打开eclipse->help->Eclipse Markplace->search->fiind输入Egit 你会看到如下截图(我的为已 ...

  8. Git基础篇【转】

    转自:https://i.cnblogs.com/EditPosts.aspx?opt=1 1.设置名字与邮箱 $ Git config –global user.name “YourName” $ ...

  9. GIT基础篇,配置账号及命令查看以及帮助命令

    提交用户名和邮件地址   1 安装完Git首先要设置你的用户名称与邮件地址.每一个Git的提交都会使用这些信息,并且它会写入到你的每一次提交中. 2 git config --global user. ...

随机推荐

  1. angular form-data文件上传

    前言:很久没更新博客,最近公司pc端技术选型用angular,这几天就赶鸭子上架,硬着头皮直接上手angular.其中有许多小坑陆陆续续踩起走.今天就遇到一个比较常见的问题:图片上传. 主题:图片上传 ...

  2. JQuery笔记:JQuery和JavaScript的联系与区别

    来源:http://www.ido321.com/1019.html ps:LZ觉得这个标题有点大了,超出了能力范围,不喜勿碰.目前只记录LZ能力范围内的,日后持续补充. 一.JQuery对象和DOM ...

  3. Hbase Basic Prerequisites

    Table 2. Java HBase Version   JDK 6      JDK 7       JDK 8 1.0 Not     Supported yes Running with JD ...

  4. 转载-清除Linux中MySQL的使用痕迹~/.mysql_history

    原文地址:清除Linux中MySQL的使用痕迹~/.mysql_history 作者:RogerZhuo 原贴:http://bbs.chinaunix.net/thread-3676498-1-1. ...

  5. 【转】Maven实战(六)--- dependencies与dependencyManagement的区别

    原博文出自于:http://blog.csdn.net/liutengteng130/article/details/46991829   感谢! 在上一个项目中遇到一些jar包冲突的问题,之后还有很 ...

  6. PLSQL Developer 常用设置及快捷键

    1.登录后自动选中My Objects(已验证可用) 默认情况下,PLSQL Developer登录后,Brower里会选择all Objects,如果你登录的用户是DBA, 要展开tables目录, ...

  7. JSF 2 password example

    In JSF, you can use the <h:inputSecret /> tag to render a HTML input of type="password&qu ...

  8. mysql一些写常用命令

    参见pcttcnc2007博客腾飞 1.mysql的status信息命令: mysql> show global status; 2.可以列出mysql服务器运行各种状态值,另外,查询mysql ...

  9. HDU 3966 Aragorn's Story (树链点权剖分,成段修改单点查询)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3966 树链剖分的模版,成段更新单点查询.熟悉线段树的成段更新的话就小case啦. //树链剖分 边权修 ...

  10. HDU1856More is better(并查集)

    最近发现以前的东西都忘得差不多了,在这里刷刷水题 并查集: int find_parent(int x) { return x = p[x] ? x : p[x] = find_parent(p[x] ...