tag 标签: tortoisegit

相关博文
  • 热度 15
    2012-4-24 21:57
    2611 次阅读|
    2 个评论
    前言 对于周围很多研究程序设计的人不会使用版本控制系统(Version Control System) 这点很无言,所以写这篇教学。本篇教学的主要观众是没用过版本控制系统或是没用过 git 的 Windows 使用者。如果这篇的回应良好,我下次再补上 Linux 上 CLI 界面的 git 指令使用入门教学。 首先,为什么要用版本控制系统?版本控制系统有以下重要的功用: 记录所有的原始码更改过程并作备份检视原始码的修改历史或复原旧的版本 与人协力时可以有效率地同步修改的内容使用分支(Branch) 来同时维护多个程序版本 这些功用带来的好处非常多,其中包含: 不用担心修改的东西会搞砸一个程序不需要手动备份各个版本不需要在原始码里使用注释(Comment) 来保留没用到的语法 在团队中与人分享原始码的时候不需要zip 来 zip 去,然后 e-mail 来 e-mail 去  ( 备注 1) 因为这些优点,专业的程序开发人员没有不用版本控制系统的。所以,麻烦还不会使用版本控制系统的花点时间学习一下。 * 备注 1 :没错,我对于这点非常无言。这篇教学贴出去以后,我会考虑拒收 zip 起来的原始码。   git 简介 git 是由著名 Linux 内核 (Kernel)  开发者 Linus Torvalds 为了便利维护 Linux 而开发的。 git 有以下几项特色: 属于分散式版本控制系统(Distributed Version Control System) 速度非常快,而且在传输档案时使用 gzip 来减小档案大小有非常多指令可以使用,甚至能与非 git 系统的版本控制系统互连 细谈这些特色就属于中阶git 教学的内容了,简介方面我先就此打住。   GitHub 简介 GitHub 是个提供在线 git 空间的平台,能让多名开发人员很方便地进行协力软件开发。提供的方案包含免费和付费的账号,而其中的差异在于能否使用私人空间。虽然免费的账号只能使用公开的空间并且需要公布所有原始码,但对许多项目来说不是个问题。除此之外,免费的账号没有其他限制。 使用GitHub 的优点包含: 拥有在线原始码和修改历史浏览,能让开发人员便利地分享原始码有人创立分支(Fork) 时能够追踪所有的分支 越来越多的知名企业在征才时会要求申请者提供GitHub 账号,以用来观察在开源软件社群中的参与,还有程序写作风格和技巧等等  ( 备注 2) 所以,要参与开源软件开发或只是要单纯备份/ 集中整理自己的原始码时, GitHub 是个非常好的平台。 * 备注 2 :不过如果你的 GitHub 账号上的东西太空洞或潦草的话,还是不要给雇主知道,免得扣分。我也因此拒绝过一些有提供 GitHub 账号但是没有什么内容的求职者。 TortoiseGit 虽然说要用git 指令才能完整地体验 git 的强大功能, TortoiseGit 对于指令界面感到陌生的人可能会比较友善,也能够在功能和易用性上有个好的平衡。 TortoiseGit 可到此下载:  http://code.google.com/p/tortoisegit/downloads/list 。根据系统的类型,选择下载64bit 或是 32bit 的版本;下载好以后安装然后重开机。 重开好后,安装msysgit :  http://code.google.com/p/msysgit/downloads/list 。下载Full installer for official Git 1.7.6 ,或是更新的版本。装了这个以后 TortoiseGit 才能正常使用。 建立git 项目 (Init) 并且储存修改 (Commit)       首先,在一个已存在的项目资料夹,或是一个新的资料夹,点右键并选择 Git Create repository here … 。这会建立一个新的git 数据库,以便储存原始码资料。出现 Git Init 的对话框时,不要勾 Make it Bare ,并点 OK 。好了以后,如果有开啓显示隐藏档案,便可以看到一个 .git 的隐藏资料夹。     建立好git 数据库以后,要设定作者信息。在同个资料夹内按右键,并选择 TortoiseGit - Settings 。到 Git - Config 页面,在 Name 输入你的名字,在 Email 输入你的 E-mail 。好了以后按 OK  关闭。   有原始码可以储存以后,在资料夹内按右键,并选择Git Commit - "master" 。 master 指的是当前的分支;如果本篇教学有续集的话,我会再作解释。   出现Commit 视窗时,在 Message 中输入要储存变更的注释。好的开发者通常会在此大致叙述此次修改有新增或异动的内容。输入讯息后,勾取要储存的档案。要储存所有档案中的变更,勾 Select / Deselect All 。好了以后,点 OK 即可。等储存完成后,点 Close 来关闭视窗。 建立 GitHub 账号       下一步骤便是建立一个GitHub 账号:  https://github.com/plans 。如果要用免费方案,点Create a free account 。输入使用者信息,并按 Create an account 。     账号建立好以后,点New Repository 以建立一个源码库。输入项目名称后按 Create Repository 即可。   项目建立好以后,复制源码库的连结,如git@github.com:vvasabi-test/test-project.git 。回到项目资料夹,点右键并选择 TortoiseGit - Settings 。     在这个视窗中,选择Git - Remote ,在 Remote 中输入 origin , Url 中贴上刚刚复制的连结然后点 Add New/Save 。好了以后按 OK 。 这些步骤每个项目只需要做一次。   上传修改内容(Push)       现在要把修改的内容上传到GitHub 。首先要建立认证密钥,开启开始选单  -  所有程序  - TortoiseGit - Puttygen 。点 Generate ,等待程序跑完,然后点 Save private key ,将此密钥存到任意处。如果需要保障密钥不会被盗用,可在储存前输入 Key passphrase 来用密码保护密钥 ( 同样的密码需在 Confirm passphrase 内输入一次 ) 。如果没有输入密码,出现 PuTTYgen Warning 时点 Yes 即可。     密钥储存完以后,回到开始选单,开启所有程序 - TortoiseGit - Pageant 。这时状态列会跑出一个新图示,在这图示上点右键并选择 Add Key ,然后选择刚刚储存的密钥。     回到PuTTY Key Generator的视窗,并且选取和复制Public Key。开启GitHub网页,并点取Add your public key。点Add another public key,在Title栏输入随意名称,在Key栏贴上密钥,好了以后点Add key。 设定密钥的步骤虽然很麻烦,好消息是一台电脑只要设定一次。   回到项目资料夹,并按一右键,选择TortoiseGit - Push … 。勾 Push all branches ,然后点 OK ,出现 PuTTY Security Alert 时点 Yes( 这只会出现一次 ) 。如果没有出现错误警告,这就代表项目已成功地上传到 GitHub 了。 平日工作流程 GitHub 一开始的设定很麻烦,懒得设定这些步骤的人也可以只使用 git 而不使用 GitHub 。不过,这些设定大多只要操作一次,所以最好可以有耐心地完成这些步骤。 平常修改程序码时,在修改完以后需要储存变更(Commit) ,在项目资料夹内点右键并点 Git Commit - "master" … 。输入修改的讯息,选择要储存的档案并按 OK 。 好了以后,点TortoiseGit - Push … 来将修改上传到 GitHub 。勾 Push all branches ,然后点 OK 。如果出现错误,请确定 Pageant 有开。没有的话,请参照上面的步骤来开启 Pageant 并加入先前储存的密钥。 结语 虽然使用版本控制系统看起来很麻烦,但是带来的好处绝对值得花时间去学习。这篇教学由于是入门教学,先在此打住。如果本篇的回应良好,我会再找时间写续集。