zoukankan      html  css  js  c++  java
  • 64位windows 7下成功配置TortoiseGit使用Github服务器

    最近感觉自己电脑上的代码太乱了,东一块、西一块……于是决定使用正规的源代码管理软件来管理自己以后写的代码。以前做小项目的时候用过TortoiseSVN,感觉不错,但是速度上有点慢,于是决定尝试一下新东西——Git。通过网络发现Git很火,看看下面的文字你就会知道Git有多火。

            Git 是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理。在推出后,Git在其它项目中也取得了很大成功,尤其是在Ruby社区中。目前,包括 Rubinius和Merb在内的很多知名项目都使用了Git。Git同样可以被诸如Capistrano和Vlad the Deployer这样的部署工具所使用。

            目前大部分的版本控制都需要一個服务器端,commit时提交到服务器端。git虽然是分布式的管理工具,但它也可以使用集中管理的方式。举例来说,billy创建了一个新项目,tom觉得这个项目比较有意思,他想玩玩看,他可以把整个repo(reoisitories)都clone到本地,并且在他clone下来的项目中自己有一个repo。tom可以自由的对这个repo做各种提交修改,直到他满意为止。这时tom可以告诉billy,他改了一些什么,若billy觉得不错,可以从tom那边fetch并merge到本地。

            如前所述,作为一个分布式的版本控制系统,在Git中并不存在主库这样的概念,每一份复制出的库都可以独立使用,任何两个库之间的不一致之处都可以进行合并。正因为如此,所以有了Github这个网站,github是基于ruby的并揉合多种语言进行开发的,上面的ruby项目也非常活跃。在github 中,每个人都可以有多个repo,这些repo都是与用户绑定在一起的。user之间可以互相clone repo、fork repo、watch repo或是 follow其他user,就好像twitter或是plurk等社交网站一样。

            不过若使用免费的github则所有的repo都要是public且有300M容量的限制。若希望有private的repo,则需要跟付费才可。github另外还有剪贴簿的功能,可将代码贴到其中并自由的发展各种branch。

            GitHub 可以托管各种git库,并提供一个web界面,但与其它像 SourceForge或Google Code这样的服务不同,GitHub的独特卖点在于从另外一个项目进行分支的简易性。为一个项目贡献代码非常简单:首先点击项目站点的“fork”的按 钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的“pull request”机制向项目负责人申请代码合并。已经有人将GitHub称为代码玩家的Facebook。

            看了上面的简介,感觉不错吧。那我们现在开始行动吧。

    1 下载并安装相关软件

            这里主要涉及的软件包括msysgit和TortoiseGit。

    msysgit的下载地址:http://msysgit.googlecode.com/files/Git-1.7.4-preview20110204.exe

    TortoiseGit的下载地址:http://code.google.com/p/tortoisegit/downloads/list(选择你心仪的版本下载)

            在安装 TortoiseGit 之前,你的 Windows PC 上必须先安装 msysgit。因为此程序提供了 Git 核心。而且安装顺序是:先安装 msysgit,然后安装 TortoiseGit。如果你弄反了,也没有关系,可以进入 TortoiseGit 的设置界面(右键菜单上 TortoiseGit -> Settings -> General -> MSysGit -> Path),手动指定 Git 核心文件的位置(例如 c:Program FilesGitin)。发现没有,当你进入设置界面的时候,已经配置好了,不得不说现在的软件做得可真周到。

    2 在github.com上建立自己的帐号

            前文说了,github就是程序员的facebook,所以我们应该有自己的帐号。帐号分两种,免费帐号和付费帐号。使用免费的github,所有的repo都要是public且有300M容量的限制;若希望有private的repo,则需要付费才可。本着自由交流的态度,还是申请一个免费的帐号吧。这个流程很容易,我就不多说了。

            注册后,github会为大家提供几个教程,帮助大家快速学习掌握github的使用方法。地址如下:

    Set Up Git教程:http://help.github.com/win-set-up-git/

    Create a Repo教程:http://help.github.com/create-a-repo/

            需要指出的是这些教程使用的是msysgit提供的git bash,如果大家对命令行很感冒,那么那些教程基本上就够大家参考了,无需再浏览本文;否则恳请各位继续欣赏下文。

    3 环境配置

            本着学习的态度,我按照上述教程走了一下,发现问题:github ssh: connect to host github.com port 22

    本人愚钝,没有解决该问题……于是还是回到开始的想法,使用TortoiseGit管理自己的Github项目。

    3.1 在TortoiseGit配置MSysGit

           在开始菜单中找到TortoiseGit的Settings一项,如图1所示。

    图 1 TortoiseGit中Settings的位置

    由于我是64位的电脑,所以会显示Settings (64 bit)。左键点击后,进入TortoiseGit的设置界面。可以清楚的看到,MSysGit已经配置好了。如果Git.exe的位置为空,请大家自己手动设置好。

    图 2 TortoiseGit的设置界面

     

    3.2 建立测试项目HelloGit

            在想放置项目的位置新建一个文件夹,名称为HelloGit,右键单击该文件夹,选择"Git Create repository here…",也就是创建本地的代码库。此时会弹出对话框,选择"OK"。(PS:不用搭理哪个复选框)随后会提示成功创建了一个空的代码仓库。

    3.3 向HelloGit添加文件并更新项目到本地版本库中

            新建一个README文件,随意填写一些信息。然后邮件单击README,选择"Git Add…",就是将README文件添加到本地HelloGit项目中。

     

    单击"OK"后,显示如下对话框。

    单击"commit",将更新提交到本地版本库中。

     别忘了在"Message"中填写此次提交所完成的任务,便于以后查看提交信息,对项目的进度有所掌握。单击"OK",继续。

    3.4 建立沟通远程版本库与TortoiseGit的联系

            这里提到的沟通桥梁就是通信中使用的密钥。TortoiseGit 使用扩展名为ppk的密钥,而不是ssh-keygen生成的rsa密钥。也就是说使用ssh-keygen -C "username@email.com" -t rsa产生的密钥在TortoiseGit中不能用。而基于github的开发必须要用到rsa密钥,因此需要用到TortoiseGit的putty key generator工具来生成既适用于github的rsa密钥也适用于TortoiseGit的ppk密钥。

            运行TortoiseGit开始菜单中的puttygen程序,点击“Generate”按钮,鼠标在上图的空白地方来回移动直到进度条完毕,就会自动生一个随机的key。

            登录Github官网,点击右上角的"Account Settings",选择SSH Public Keys->Add another public key,将上面生成的Key粘贴进来,选择"Add Key"。公钥添加完毕。然后点击上面对话框中的"Save private key",将私钥保存在本地,文件后缀是ppk。

            运行TortoiseGit开始菜单中的Pageant程序,程序启动后将自动停靠在任务栏中,图标显示为64位windows 7下成功配置TortoiseGit使用Github服务器 - 哼哈二将 - 尚武思文,双击该图标,弹出key管理列表。点击"Add Key",选择刚才保存的ppk文件,这样私钥就添加到key管理列表中了。

    3.5 更新项目到远程版本库中

            这是我们的最后一步啦!但是前提是我们得在TortoiseGit中配置好"Remote"。右键单击HelloGit项目,选择TortoiseGit->Settings,弹出如下对话框。

            我们需要做的工作就是配置Git的Remote项。

    Remote就是给该项目起个名称,我们就是HelloGit;

    Url就是Github上对应的远程版本库的网络地址。各位有没有认真看前面给的教程呀,建立一个Repo应该没有问题吧。在本地key管理列表添加好自己的私钥了吧,在github上的相应项目中添加好自己的公钥了吧,那我们可以继续了,不然还得返回到3.4。在网站上进入你的项目中,会看到如下信息:

    前面我已经讲了,在我的电脑上使用SSH,无法连接到github,所以此处我选择的是HTTP的方式。git@github.com:username/reponame.git就是我们需要的Url。(PS:username和reponame应该是跟你的设置对应的,在使用中你可别真的原封不动地使用git@github.com:username/reponame.git,这可是连不上服务器的)

    Putty处需要填的信息就是我们在本地保存的私钥文件的路径。

            填好这三项后,点击"Add New",就会在左边的列表中显示我们添加好的Remote信息。好了,我们可以进行最后一项工作了。右键单击项目HelloGit文件夹,选择TortoiseGit->Push,弹出对话框,选择刚才添加的Remote信息,单击"OK",成功推送!

    原文地址:http://www.360doc.com/content/13/0622/16/203871_294766073.shtml

  • 相关阅读:
    hdu 3666 差分约束系统
    hdu 1198农田灌溉
    常微分方程(阿諾爾德) Page 45 相空間,相流,運動,相曲線 註記
    高等微積分(高木貞治) 1.4節 例2
    常微分方程(阿諾爾德) Page 45 相空間,相流,運動,相曲線 註記
    解析函數論 Page 29 命題(2) 函數模的有界性
    高等微積分(高木貞治) 1.4節 例2
    解析函數論 Page 29 命題(1) 有界閉集上的一致連續性
    解析函數論 Page 29 命題(3) 模的下界的可達性
    解析函數論 Page 29 命題(2) 函數模的有界性
  • 原文地址:https://www.cnblogs.com/fonyer/p/3894960.html
Copyright © 2011-2022 走看看