重点摘要: 创建了一个文件后首先先通过git add . 添加到暂缓区,然后通过git commit -m "提交的名字" 提交到本地仓库,最后才可能push到远程仓库。
1. 个人开发流程 工作区 -> 暂缓区 -> 本地仓库 。
2. 多人开发流程 工作区 -> 暂缓区 -> 本地仓库 -> 远程仓库。
一、创建仓库的基本命令
1> 创建代码仓库
$ git init
2> 配置用户名和邮箱
$ git config user.name TheYouth
$ git config user.email TheYouth@l26.com
* 以上两个命令会将用户信息保存在当前代码仓库中
3> 如果要一次性配置完成可以使用一下命令
$ git config --global user.name TheYouth
$ git config --global user.email TheYouth@l26.com
* 以上两个命令会将用户信息保存在用户目录下的 .gitconfig 文件中
4> 查看当前所有配置
$ git config -l
5>如在桌面创建了一个文件夹(你的项目文件夹),添加一个main.c的文件
$ touch main.c
6>查看当前代码库的状态
$ git status
结果如图
#未添加的状态
# 将文件添加到代码库
$ git add main.c
添加后的状态
# 将修改提交到代码库
$ git commit -m "添加了main.c"
提示:
* 在此一定要使用 -m 参数指定修改的备注信息
* 未添加(git add .)之前,文件存在工作区内,只有添加了才会添加的缓存区内(准备提交),commit 后即可提交。
* 提交之前,必须先添加。
6> 添加多个文件
$ touch Person.h Person.m $ git add . $ git commit -m "添加了Person类" $ open Person.h $ git add . $ git commit -m "增加Person类属性"
7> 别名和日志
$ git config alias.st status
$ git config alias.ci "commit -m"
# 查看所有版本库日志
$ git log
# 查看指定文件的版本库日志
$ git log 文件名
# 配置带颜色的log别名
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
git log 后效果如图:
提示:在git中,版本号是一个由SHA1生成的哈希值
8>版本回归(回滚)
# 回到当前版本,放弃所有没有提交的修改(意思是如果你在你的项目上的工作区内添加了一些内容,将回归到最后提交的版本里去)
$ git reset --hard HEAD
# 回到上一个版本(回归到上一个版本)
$ git reset --hard HEAD^
# 回到之前第3个修订版本
$ git reset --hard HEAD~
# 回到指定版本号的版本 (回归到指定的版本号)
$ git reset --hard e695b67 # 查看分支引用记录
$ git reflog