Git全局设置-设置用户信息
git config --global user.name "itcast"
git config --global uesr.email "hello@itcast.cn"
git config --list#查看配置信息
Git常用命令
获取Git仓库的两种方式:
- 在本地初始化一个Git仓库(不常用)
- 创建一个空目录作为本地仓库
- 在这个空目录里打开Git bash窗口
- 执行初始化
git init
- 在远程仓库克隆(常用)
git clone 远程仓库地址
重要概念
- 版本库:.git隐藏文件夹就是版本库,版本库中存储了很多配置信息。日志信息和文件版本信息等
- 工作区:包含.git文件的目录就是工作区,也称为工作目录,主要用于存放开发的代码
- 暂存区:.git文件夹中的index文件就是暂存区,也可以叫做stage,暂存区是一个临时保存修改的地方。
Git工作区文件的两种状态:
- untracked 未跟踪(未被纳入版本控制)
- tracked 已跟踪(被纳入版本控制):
- Unmodified 未修改状态。
- Modified 已修改状态。
- Staged 已暂存状态
本都仓库操作命令*
- git status : 查看文件状态
- git add : 将文件的修改加入暂存区
- git reset : 将暂存区的文件取消暂存区或者是切换到指定版本:
git reset --hard 版本唯一标识
- git commit : 将暂存区的文件修改提交到版本库:
git commit -m"标识符" 文件名
- git log : 查看日志
远程仓库操作命令*
- git remote: 查看远程仓库
git remote -v
- git remote add: 添加远程仓库
git remote add origin url
- git clone: 从远程仓库克隆
- git push: 推送到远程仓库:
git push [remote-name][branch-name]
- 具体步骤:首先要先加入缓存区,将新增加的文件交给git管理:将文件的修改加入到暂存区
git add 文件名
,然后将修改的文件提交到版本库git commit -m"标识符" 文件名
,现在已经将修改的文件提交到本地仓库了,远程仓库还没有,所以:git push [remote-name][branch-name]
- 注意:git push 操作通常第一次需要身份认证(码云),认证通过后才可以推送。另外一点,只有仓库成员才可以推送。
- 具体步骤:首先要先加入缓存区,将新增加的文件交给git管理:将文件的修改加入到暂存区
- git pull: 从远程仓库拉取,具体是从远程仓库获取最新版本并合并到最新版本,命令格式:
git pull[short-name][branch-name]
- 注意,如果进行拉取操作的是自己创建的本地仓库,那么拉取远程仓库的时候会因为两个仓库不相关的历史报错。代码需要更新为:
git pull[short-name][branch-name] --allow-unrelated-histories
- 注意,如果进行拉取操作的是自己创建的本地仓库,那么拉取远程仓库的时候会因为两个仓库不相关的历史报错。代码需要更新为:
分支操作
- 概念:分支意味着你可以把你的工作从主线开发上分离出来,以免影响开发主线。同一个仓库可以有很多个分支,各个分支相互独立,互不干扰。创建本地仓库的时候会默认创建一个master分支。
- 关于分支的命令如下
- git branch :查看本地仓库的分支
- git branch -r :查看远程仓库的分支
- git branch -a :查看本地的和远程仓库的所有分支
- git branch [name] :创建分支
- git checkout [name] :切换分支
- git push [shortName] [name] : 推送至远程仓库分支
- git merge[name] :合并分支
- 同一个文件在两个分支下都修改,然后再合并的时候会冲突,需要手动处理这个问题。
标签操作
- 同一个文件在两个分支下都修改,然后再合并的时候会冲突,需要手动处理这个问题。
- 概念:git中的标签,指的是某个分支某个特定时间点的状态。通过标签,可以很方便的切换到标记时的状态。
- 标签操作的命令:
- git tag :列出已有的标签
- git tag[name] : 创建标签
- git push [shortName][name] : 将标签推送至远程仓库
- git checkout -b[branch][name] : 检出标签