
<!-- added by baiyu -->

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>

<style type="text/css">
body table tr th {
	font-size: 24px;
	color: #666;
}
body table tr td {
	color: #333;
}
body table tr td {
	color: #000;
	font-size: 20px;
	font-family: "Comic Sans MS", cursive;
}
body table tr td span {
	color: #039;
}
body p {
	font-size: 18px;
	color: #009;
}
body table tr td p {
	color: #333;
}
body table tr td span1 {
	color: #09C;
	font-weight: bold;
}
body table tr td span2 {
	font-weight: bold;
	color: #09C;
}
body table tr td p span3 {
	color: #6C6;
}
body table tr td p span3 {
	font-weight: bold;
}
body table tr td p span4 {
	color: #F00;
}
body table tr td p span4 {
	font-weight: bold;
}
body table tr td span5 {
	color: #F00;
}
body table tr td span5 {
	font-weight: bold;
}
body table tr td p span6 {
	color: #33F;
	font-weight: bold;
}
body table tr td span6 {
	color: #33F;
	font-weight: bold;
	font-size: 24px;
}
</style>
</head>

<body><table width="896" border="0">
  <tr>
    <th width="890" align="center" valign="middle"> Git使用说明</th>
  </tr>
</table>

<table width="892" border="0">
  <tr>
    <td width="886">我们将使用 <span>git</span> 这个分布式版本控制系统来提交代码，下面就来介绍一下代码的提交方法。</td>
  </tr>
</table>

<table width="900" border="0">
  <tr>
    <td><p>&nbsp;</p>
    <p><span6>Windows</span6></p></td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td><span1>1、安装</span1></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><p><span>Step1：</span></p>
<p>到<a href="http://code.google.com/p/msysgit" >http://code.google.com/p/msysgit</a>下载<span>msysgit</span>, 我们使用的版本是Git-1.7.4-preview20110204.exe</p></td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td>安装时，选择Checkout as-is, commit as-is,这样Git 就不会修改换行风格了. 其他用缺省设置即可。</td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><p><span>Step2：</span></p>
    <p>到<a href="http://code.google.com/p/tortoisegit/" >http://code.google.com/p/tortoisegit/</a>下载<span>TortoiseGit</span>,我们使用的版本是Tortoisegit-1.6.5.0-32bit.msi</p></td>
  </tr>
  <tr>
    <td>安装时, 选择TortoisePLink。</td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td>这两个软件安装完成后, 就可以开始使用了。</td>
  </tr>
</table>
<table width="200" border="0">
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td><p><span>Step3：</span></p>
    <p>在目录中右键单击TortoiseGit 再选Create Branch…就可以创建分支了。</p></td>
  </tr>
</table>
<p>&nbsp;</p>
<table width="900" border="0">
  <tr>
    <td width="450"><span2>2、配置</span2></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><p >在桌面上点击鼠标右键，选择TortoiseGit的Settings进行设置</p></td>
  </tr>
  <tr>
    <td align="left">Name和Email是用来设置自己的用户名和联系方式的（user.name和user.email必须填写，这些将在版本库提交时用到,<span5> 其中的name和email要和<%= Setting.host_name %>上的登陆名和邮箱保持一致</span5>
    ，方便代码贡献统计    ）。 </td>
  </tr>
  <tr>
    <td align="left"><p >接着可以定制上下文菜单：</p>
    <p >我们在Context Menu里勾选的是 <span>Clone</span>、<span>Sync</span>和<span>Commit</span></p>
    <p >在Set Extend Menu Item里勾选的是<span>Import Svn Ignore</span>、<span>Show Reflog</span>、<span>Browse References</span>、<span>Stash Apply</span>和<span>Submodule Sync</span></p></td>
  </tr>
</table>
<table width="200" border="0">
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td><span2>3、日常用法</span2></td>
  </tr>
</table>
<table width="200" border="0">
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td><p><span>Step1:</span></p>
    <p>创建版本库（两种途径）</p>
    <p><span>（a）</span>在文件夹中按右键, 选择Git Create repository here 就可以创建库了，在出现的窗口中, 不勾选选项, 直接按OK。</p>
    <p>完成上述操作后，可以看到工作区中出现了隐藏目录&nbsp;<span>.git</span>。这个隐藏的&nbsp;.git目录就是git版本库（repository）。 </p>
    <p>&nbsp;</p>
    <p><span>（b）</span>从远程服务器上克隆一个已存在的版本库到本地：在目录中单击右键，选择Git Clone... 然后在URL里填入要clone的文件的地址。</p></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td><p><span>Step2:</span></p>
    <p>添加文件和文件夹</p>
    <p>在文件夹中按右键, 选Git Commit -&gt; &quot;<span>master</span>&quot;… ，接着填写Message, 勾选<span>Whole Project</span> 选项, 这样Commit 的时候可以将整个项目的信息全部Commit 上去, 可以实现不需要打Tag 就能Checkout 出每次Commit 的内容.</p>
    <p>比如：</p>
    <p>在工作区添加file1.txt，commit以后接着修改file1.txt，再创建一个文件夹dir1, 并且放置一个file2.txt 在dir1 目<br />
    录中, 再次commit 时, 就可以将dir1 和file2.txt 一起加入了.</p></td>
  </tr>
</table>
<table width="200" border="0">
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td><p><span>Step3:</span></p>
    <p>创建分支</p>
    <p>在目录中单击右键，选择TortoiseGit 里的<span>create Branch…</span>就可以创建分支了。</p>
    <p>勾选<span>Switch to new branch</span>, 就可以跳转到建立好的分支上。</p>
    <p>比如：</p>
    <p>添加一个file3.txt 后, commit 修改。接着通<span>过Switch/Checkout…</span>.可以切换回master 分支。</p></td>
  </tr>
</table>
<table width="200" border="0">
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td><p><span>Step4：</span></p>
    <p>看分支情况及修改log</p>
    <p>在目录中单击右键，选择TortoiseGit 里的<span>Show log</span>, 可以看分支情况和修改log。 勾选<span>All Branches </span>可以看到所有分支的情况.</p>
    <p>在Message 列中,<span3> 绿色</span3>
    的是<span3>分支</span3>,<span4> 红色</span4>
    的是<span4>当前工作分支</span4>。</p></td>
  </tr>
</table>
<table width="200" border="0">
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td><p><span>Step5:</span></p>
    <p>比较版本差异</p>
    <p>通过按Shift , 可以选中两个版本, 接着再按鼠标右键, 选中<span>Compare revisions</span>, 就可以比较两个revision 了。</p></td>
  </tr>
</table>
<table width="200" border="0">
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td><p><span>Step6:</span></p>
    <p>合并分支</p>
    <p>首先切换到master 分支, 接着点击鼠标右键选择TortoiseGit 里的<span>Merge</span>，就可以实现将分支合并到主版本。</p></td>
  </tr>
</table>
<table width="200" border="0">
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td><p><span>Step7:</span></p>
    <p>其他操作</p>
    <p><span>(a)</span> Stash</p>
    <p>Git 提供了一个暂存修改的功能, 称为<span>Stash</span>。 在一些程序进行了修改, 但还不<br />
      想commit 成revision 时, 就可以将这些修改Stash 起来, 等到后面需要时再将它<br />
    们Pop 出来。</p>
    <p><span>(b)</span> 忽略文件</p>
    <p>一些编辑器在修改文件后会产生bak 文件, 一般不希望这些备份文件也加入<br />
      库中, 可以选中一个.bak 文件, 然后选择<span>Add to ignore list</span> 中的<span>*.bak</span>, 这样bak 文<br />
    件以后就不会被commit 了。</p></td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td><p >&nbsp;</p>
    <p >Tips： </p></td>
  </tr>
  <tr>
    <td><p >在碰到不熟悉的命令时，可以通过&nbsp;<span>git&nbsp;help</span>命令查看git的用户手册，命令如下： </p></td>
  </tr>
</table>
<table width="297" border="0">
  <tr>
    <td width="291" align="center"><p ><span>$git&nbsp;help&nbsp;&lt;command&gt;</span> </p></td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>

<table width="901" border="0">
  <tr>
    <td width="895"><span6>Linux</span6></td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td><span1>1、安装</span1></td>
  </tr>
  <tr>
    <td>如果你用的是Linux，你可以用你的本地包管理系统（native package management system)来安装。</td>
  </tr>
  <tr>
    <td><p><span>$ yum install git-core </span> </p>
    <p>在redhat等系统下用yum</p>
    <p><span>$apt-get install git-core</span></p>
    <p>在debian，ubuntu等系统下用apt-get</p></td>
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><span1>2、配置</span1></td>
  </tr>
  <tr>
    <td><p ><span>$git&nbsp;config&nbsp;--global&nbsp;user.name&nbsp;&#8220;your_name&#8221;</span></p>
    <p><span>$git&nbsp;config&nbsp;--global&nbsp;user.email&nbsp;&#8220;your_email&#8221;&nbsp;</span> </p>
    <p>Name和Email是用来设置自己的用户名和联系方式的（user.name和user.email必须填写，这些将在版本库提交时用到,
      <span5> 其中的name和email要和<%= Setting.host_name %>上的登陆名和密码保持一致</span5>
，方便代码贡献统计    ）。</p></td>
    
  </tr>
</table>
<table width="900" border="0">
  <tr>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><span1>3、代码提交方法</span1></td>
  </tr>
  <tr>
    <td><p>cd file1</p>
    <p><span>$ git add file1</span></p>
    <p><span>$ git init</span></p>
    <p><span>$ git commit -a</span></p>
    <p><span>$ git remote add [name] [版本库里给的URL（去掉http）]</span></p>
    <p><span>$ git push [name] master</span></p>
    <p>输入password后即可上传。</p></td>
  </tr>
</table>
<p>&nbsp;</p>
<table width="831" border="0">
  <tr>
    <td width="825" align="right">——Trustie团队</td>
  </tr>
</table>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
</body>
</html>

<!-- end -->