Git

Git,这个世界上目前最先进的分布式版本控制系统(没有之一)。

它的出现,可以让你结束手动管理多个“版本”的史前时代,进入到版本控制的 20 世纪。


[ Git 工作流 ] Git 和其他版本控制系统,如 SVN 的一个不同之处就是有暂存区的概念。

  • 工作区( Workspace),是电脑中实际的目录。
  • 暂存区( Index ),类似于缓存区域,临时保存你的改动。
  • 仓库区( Repository ),分为本地仓库和远程仓库。

[ Git 常用命令 ]  通常提交代码分为几步:

  1. git add:从工作区提交到暂存区
  2. git commit:从暂存区提交到本地仓库
  3. git pushgit svn dcommit:从本地仓库提交到远程仓库。                 < Gitlab >

一般来说,记住以下命令,便可进行日常工作了:



安装 Git

可以直接从 Git 官网上下载安装程序?!,进行安装。安装完成后:

[ 配置 - 自报家门 ] 安装完成后,还需要最后一步设置,在命令行中输入:


创建版本库(本地仓库)

什么是版本库呢?版本库,又名仓库(repository),可以简单理解成一个目录。这个目录里的所有文件都可以被 Git 管理起来,每个文件的修改、删除,Git 都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻进行“还原”。

第一步:在合适的地方,创建一个空目录(即,项目根目录)


第二步:初始化一个 Git 仓库 ( 生成 .git 隐藏目录 )


然后,就可以写代码了 ...


第三步:文件备份                            // 把文件存储到版本库,需要 2 步:

  • 把文件添加到仓库(可批量添加)

  • 把文件提交到仓库


Then,一次次的进行编写代码的工作,一次次的备份 ... 以下命令对于了解当前状态有所帮助:


版本回退

[ 查看提交日志 ] 下面一大串类似1094adb...的是commit id(版本号),和 SVN 不一样,Git 的版本号不是 1,2,3… 递增的数字,而是一个 SHA1 计算出来的一个十六进制数字(分布式版本控制,防止冲突)。


[ 返回操作 ] 每提交一个新版本,实际上 Git 就会把它们自动串成一条时间线。


现在,回退到了某个版本,关掉了电脑,第二天早上就后悔了,想恢复到新版本怎么办?


[ 历史操作 ] 找不到新版本的commit id怎么办?在 Git 中,总是有后悔药可以吃的。当你用$ git reset --hard HEAD^回退到add distributed版本时,再想恢复到append GPL,就必须找到append GPL的 commit id。

Git 提供了一个命令git reflog用来记录你的每一次命令: