Mac下Git的基本使用
最近要用到Git,所以就写了篇关于Git本地仓库使用的文章,可能只会停留在比较浅显的层次上,所以如果有什么问题,欢迎提出来,大家一起交流。
0.查看git的基本命令:git help “指令名”,指令名可写可不写,写上的话就查看此指令的用法,不写就显示全部指令

1.初始化本地仓库: git init ‘仓库创建路径’ 没有指定仓库安装路径默认当前目录

创建完会在目录下生成.git文件,这个是隐藏文件,如果看不到,可用shift+command+.查看

2.设置git配置信息:
(1)配置当前项目用户名:git config user.name ‘用户名’
(2)配置当前项目用户联系方式:git config user.email ‘邮箱地址’

我们可以在.git文件夹里面看到我们刚刚配置好的用户名和联系方式

(3)配置全局用户名:git config --global user.name ‘用户名’
(4)配置全局用户联系方式:git config —global user.email ‘邮箱地址’
3.在git仓库目录下创建项目


当前文件夹中就有了我们创建好的工程

4.查看一下当前工程的状态:git status

可以发现我们创建的工程的状态是红色的modified
5.提交工程:git commit
进入了一个vim界面,要求我们输入描述信息,输入信息后,保存退出,即可以提交成功;

另外一种格式是:git commit -m “描述信息”,这种格式不用进入vim即可直接保存

6.修改一下源文件,可以发现左边栏相应的修改文件出现“M”的标记

7.再次来到terminal,查看文件状态

提示我们应该先添加或先更新一下我们的源码才可以提交(git不像svn,git在当前项目与仓库之间多了一个git缓冲区,修改过的项目必须先add到缓冲区,才能commit到仓库,否则会失败),所以我们应该先提交:git add . ; “.”代表当前目录下所有文件。

8.提交的基本操作已经完成,那么怎么查看以往的版本呢?我们可以通过:git log 来查看以往的版本

那一串很长的是对应工程的哈希值,和工程一一对应。GIt中的版本号是一个”40位“的哈希值,而SVN中的版本号是一个递增的整数
9.假如我们想回到某一天的版本,又应该怎样做呢?我们要分为两种情况讨论:
(1)已经提交
git reset -—hard HEAD^返回上一个版本
其中—hard代表强制重置
git reset —-hard版本号(只需要写前7位)
(2)未提交
git checkout文件名回退到上一次提交的版本
git reset —-hard HEAD回退到上一次提交的版,注意HEAD后面没有尖号^
由于我们刚才已经提交了,所以我们使用“git reset —-hard 版本号前七位”来回到之前的版本

查看源文件可以看到确实回到了原来的版本
10.查看所有版本:git reflog

在命令行上操作git的基本介绍就差不多了,希望对大家有点用处,有什么不对的欢迎指正,谢谢。