Git基础
Git 是一种分布式版本控制系统,每个开发者都拥有完整的仓库副本。这使得可以在本地进行大部分操作,而不需要网络连接。分布式系统允许离线工作、更灵活的分支管理和更高效的协作。Git 支持多种工作流程,包括集中式工作流、功能分支工作流、Gitflow 等。开发者可以选择适合他们团队和项目的工作流。
Git命令
获取Git仓库
初始化本地仓库
远程获取已有仓库
1
| git clone https://github.com/yangLieee/Git_Test.git
|
查看状态
查看文件状态
查看远程仓库
查看提交历史
查看文件改动
查看本地提交记录
可以叫做显示可引用的历史版本记录。HEAD值越小,表示版本越新,越大表示版本生成时间越久。
文件提交流程
获取最新版本文件
1
| git pull [remote] [branch]
|
将文件提交至暂存区
提交文件并写log信息
1 2 3 4 5 6 7 8 9 10 11
| # 提交文件LOG单行显示 git commit -m "[Log]"
# 提交文件LOG多行 git commit -m ' [log] xxx - add - delete xxx ' # 使用-a参数可以不用 git add,直接提交
|
推送数据到远程仓库
1 2
| git push origin master git push origin HEAD:refs/for/refs/heads/master
|
分支
查看分支
切换分支
1
| git checkout [branch-name]
|
创建本地新分支
1
| git branch [branch-name]
|
更改文件状态
撤销add
撤销commit
1 2
| # commit-ID是指上一个版本的版本号的commit-ID git reset [commit-ID]
|
恢复文件的改动至库里状态
回退版本
命令可以将当前分支的 HEAD 指针指向指定的提交,从而回退代码到指定版本。
- –mixed (默认):将 HEAD 指针和暂存区都回退到指定提交,但不改变工作区的内容。
- –soft 仅将 HEAD 指针回退到指定提交,不改变暂存区和工作区的内容。
- –hard 将 HEAD 指针、暂存区和工作区都回退到指定提交,会丢失最新的代码修改,慎用。
1
| git reset --soft [commit-ID] [filename]
|
图像界面
Git命令取别名
1 2 3 4 5 6 7 8
| # 在.gitconfig文件中添加以下内容
[alias] br=branch st=status last=log -1 # 取消暂存文件,取消git add的内容 unstage=reset HEAD
|
repo
简介
repo 是对分布式版本控制系统 Git 中部分命令的封装,是一个命令行工具。它可以管理多个 git 项目。
使用说明
初始化
1 2
| repo init -u url [OPTIONS] #repo init -u ssh://192.168.1.26:29418/manifest -b master -m example.xml
|
- -u :指定一个URL,其链接到一个清单仓
- -m : 指定要下载哪个xml文件的内容,默认执行manifest下面的default.xml
- -b : 选在一个清单库中的一个分支
下载具体内容
参考资料