0%

git教程和分布式管理代码

当我们写了一定量的代码之后,就会遇到如何管理代码的问题。目前管理代码主要有两种管理工具分别是

  • Git:分布式管理
  • SVN:集中式管理

那么分布式管理有哪些好处呢?我目前感受到的优点如下:

  • 管理代码成本低
  • 分支branch机制让主干代码很简洁移动
  • 可以回滚和查看之前commit的任意版本,这个在实际中十分有用
  • 分支机制让多人协同修改代码更加方便
  • 可以在不同电脑上轻松同步项目代码

下面主要介绍Git的一些基本用法。

首先贴上官方资料Pro Git(2nd Edition)

1 基本概念

1.1 三种状态

  • 已提交(committed):已提交表示数据已经安全地保存在本地数据库中。
  • 已修改(modified):已修改表示修改了文件,但还没保存到数据库中。
  • 已暂存(staged):已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。

1.2 工作流程

  • 在工作区中修改文件。

  • 将你想要下次提交的更改选择性地暂存,这样只会将更改的部分添加到暂存区。

  • 提交更新,找到暂存区的文件,将快照永久性存储到 Git 目录。

如果 Git 目录中保存着特定版本的文件,就属于 已提交 状态。 如果文件已修改并放入暂存区,就属于 已暂存 状态。 如果自上次检出后,作了修改但还没有放到暂存区域,就是 已修改 状态。 在 Git 基础 一章,你会进一步了解这些状态的细节, 并学会如何根据文件状态实施后续操作,以及怎样跳过暂存直接提交。

2 基本操作

一个基本操作流程如下:
首先你有一个github的库,公有私有都可以。

  1. github上的库clone到本地
1
git clone [email protected]:xxx.git

在github上建库之后,输入代码git clone到本地仓库

  1. git init初始化生成.git文件夹

  2. 本地进行修改后,git add .将所有修改添加到缓存区,此时处于已修改的状态

  3. git commit -am "修改的提示信息"将修改的信息提交到本地仓库

  4. git push将修改的信息push到云端也就是github的仓库中

一些常用Git命令:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
git log		        //查看提交日志
git add //提交到缓存区
git reset //撤销缓存区
git commit //提交代码到本地仓库
git push //提交代码到远程仓库
git pull //拷贝远程仓库的代码
git checkout //回退文件修改或者切换分支
git stash //暂存本地修改
git stash pop //释放第一个暂存区代码
git diff //查看本地具体修改,通常用于生成补丁
git format-patch //将本地提交生成补丁
git revert //回滚一个提交
git cherry-pick //下载远程仓库的某个提交
git show //查看具体修改
git status //查看所有修改文件

感谢看到这里,在记录中收获成长,道阻且长