一些命令和概念:
- 环境配置
- 获取Git仓库
- 工作目录、暂存区以及版本库概念
- Git工作目录下文件的两种状态
- 本地仓库操作
- Git标签
环境配置
设置用户信息
# 配置用户名
$ git config --global user.name “username”
# 配置用户邮箱
$ git config --global user.email “username@163.com”
查看配置信息
# 查看本地配置
$ git config --list
# 查看用户名
$ git config user.name
# 查看用户邮箱
$ git config user.email
获取Git仓库
在本地初始化一个Git仓库
请参考:
https://blog.csdn.net/qq_29890089/article/details/121392802
从远程仓库克隆
$ git clone http://127.0.0.1:xxxx/foo.git
工作目录、暂存区以及版本库概念
版本库:前面看到的.git隐藏文件夹就是版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等
工作目录(工作区):包含.git文件夹的目录就是工作目录,主要用于存放开发的代码
暂存区:.git文件夹中有很多文件,其中有一个index文件就是暂存区,也可以叫做stage。暂存区是一个临时保存修改文件的地方
Git工作目录下文件的状态
- untracked 未跟踪(未被纳入版本控制)
- tracked 已跟踪(被纳入版本控制)
- Unmodified 未修改状态
- Modified 已修改状态
- Staged 已暂存状态
本地仓库操作
git add : 将未跟踪的文件加入暂存区
$ git add README.md
git status : 查看文件状态
$ git status <file>
git commit : 将暂存区的文件修改提交到本地仓库
$ git commit -m "message"
git reset : 将暂存区的文件取消暂存
$ git reset <file>
回撤到上一个提交记录
$ git reset --hard
git log 、git show :查看文件提交记录
$ git log <file>
git branch :查看分支
# 查看本地仓库分支
$ git branch
# 查看远程仓库分支
$ git branch -r
git pull :同步远程仓库提交到本地
$ git pull --rebase
git push:同步本地修改到远程仓库
$ git push -u origin master
git checkout : 检出
# 切换分支
$ git checkout branchname
# 创建并切换到新的分支.
$ git checkout -b branchname
# 放弃工作区中某个文件的修改:
$ git checkout <filename>
Git标签
标签指的是某个分支某个特定时间点的状态。通过标签,可以很方便的切换到标记时的状态。
列出已有的标签
# 列出已有的标签
$ git tag
# 查看tag信息
$ git show [tag]
创建新标签
# 新建一个tag
$ git tag [tagName]
将标签推送至远程仓库
# 提交指定tag
$ git push [remote] [tag]
检出标签
# 新建一个分支,指向某个tag
$ git checkout -b [branch] [tag]
删除标签
# 删除本地tag
$ git tag -d [tag]
# 删除远程tag
$ git push origin :refs/tags/[tag]