Git
1 版本控制
- 版本控制(Revision Controller)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。
2 基本Linux命令
- cd:改变目录。
- cd ..:回退到上一个目录,直接cd进入默认目录。
- pwd:显示当前所在的目录路径。
- ls(ll):都是列出当前目录中的所有文件,只不过ll列出的内容更为详细。
- touch:新建一个文件。
- rm:删除一个文件。
- mkdir:新建一个目录。
- rm -r:删除一个文件夹。
- mv:移动文件。
- reset:清屏。
- clear:清屏。
- history:查看命令历史。
- help:帮助。
- exit:退出。
- #:注释。
3 Git配置
# 查看配置 git config -l # 查看系统config git config --system --list # 查看当前用户(global)的配置 git config --global --list # 设置用户名 git config --global user.name "xianhuii" # 设置邮箱 git config --global user.email "xianhuii@qq.com"
4 Git基本理论
4.1 工作区域
- Git本地有三个工作区域:工作目录(Working Directory)、暂存区(Stage/Index)、资源库(Repository或Git Directory)。
- 如果再加上远程的Git仓库(Remote Directory)就可以分为四个工作区域。
- 工作区:平时存放项目代码的地方。
- 暂存区:临时存放改动,事实上它只是一个文件,保存即将提交到文件列表的信息。
- 本地仓库:安全存放数据的位置,保存提交的所有版本的数据。其中HEAD指向最新放入仓库的版本。
- 远程仓库:托管代码的服务器。
4.2 工作流程
- 在工作目录中添加、修改文件。
- 将需要进行版本管理的文件放入暂存区。
- 将暂存区的文件提交到Git仓库。
- Git管理的文件有三种状态:已修改(modified)、已暂存(staged)、已提交(committed)。
5 Git项目搭建
必须记住的6个命令:
- add
- commit
- push
- clone
- fetch
- checkout
# 将工作目录中的所有文件添加到暂存区 git add . # 将暂存区中的所有文件添加到本地仓库 git commit -m "message" # 克隆远程项目 git clone [url]
5.1 初始化
本地初始化:进入项目文件夹中。
git init
克隆远程项目:
git clone [url]
6 Git文件操作
untracked:未跟踪。
unmodify:未修改。
modifed:已修改。
staged:已暂存。
# 查看指定文件状态 git status [filenames] # 查看所有文件状态 git status # 提交到远程仓库 git push
7 Git分支
常用命令:
# 列出所有本地分支 git branch # 列出所有远程分支 git branch -r # 新建一个分支,但依然停留在当前分支 git branch [branch-name] # 新建一个分支,并切换到该分支 git checkout -b [branch] # 合并指定分支到当前分支 git merge [branch}] # 删除分支 git branch -d [branch-name] # 删除远程分支 git push origin --delete [branch-name] git branch -dr [remote/branch]