常用的git代码托管服务
git中存在两种类型的仓库,即本地仓库和远程仓库,我们可以通过GitHub,Gitee,gitlab,bitbucket搭建我们的远程仓库(其中我们最常用的是国内的远程仓库)
Git的常用命令
git全局设置
获取git仓库 工作区、暂存区、版本库概念
git工作区中文件状态
本地仓库操作
远程仓库操作
分支操作
标签操作
1.git的全局设置
当我们第一次安装好git后首先需要做的事情就是设置用户名称和email地址,这个是非常重要的,因为每次git提交都会使用该用户信息
在git命令行执行下面的命令:
git config --global user.name “输入自己想用的昵称”
git config --global user.email “输入自己的邮箱”
查看配置信息:
git config --list
2获取git仓库
获取git仓库通常有两种方法
(1)在本地初始化一个git仓库(不常用)
执行步骤如下:
在任意目录下创建一个空目录(例如repo1),作为我们本地的git仓库
然后进入这个目录中,点击右键打开打开git bash 窗口
然后执行 git init (执行完命令过后出现了.git就说明成功了)
(2)从远程仓库克隆(常用)
执行步骤如下:
可以通过git提供的命令从远程仓库进行克隆,将远程仓库克隆到本地
命令形式:git clone 远程仓库的地址
补充:工作区、暂存区、版本库 概念
- 版本库:前面看到的.git隐藏文件夹就是版本库,版本库中存储了很多配置信息,日志信息和文件版本信息等
- 工作区:包含.git文件夹的目录就是工作区,也称为工作目录,主要用于存放开发代码
- 暂存区:.git文件夹中有很多文件,其中有一个文件名index文件就是暂存区,也可以叫做stage,暂存区是一个临时保存修改文件的地方
git工作区中的文件状态 - untracked 未跟踪(未被纳入版本控制)
- tracked 已跟踪(被纳入版本控制)
1)unmodified 未修改状态
2)modified 已修改状态
3)staged 已暂存状态
注意:这些文件的状态会随着我们执行git的命令发生变化
3.本地仓库的常用命令
git status 查看文件状态
git add 将文件添加到暂存区
git reset 见文件回退或版本控制
git commit 将文件件提交到版本控制
git log 查看git提交的日志
-
git status 查看文件状态
-
-
git add 将文件修改加入暂存区
-
-
git reset 将暂存区的文件修改提交到版本库
-
文件修改后:
-
-
文件回退版本库
-
-
注释:–hard后面跟的是每次提交过后的那一串数字
-
git log 查看日志
-
-
git commit 将暂存区的文件修改提交到版本库
-
注释:这里的-m是对这次提交的东西进行一个描述""里面的就是描述的内容
4,远程仓库操作
git remote 查看远程仓库
git remote add 添加远程仓库
git clone 从远程仓库克隆
git pull 从远程仓库拉取
git push 推送到远程仓库
-git remote 查看远程仓库
注意:每一个远程仓库都对应的是唯一一个地址
-
git remote add 添加远程仓库
注意:这里是我前面创建git仓库的第一种方法,刚开始的时候没有跟git仓库关联,所以使用git remote的时候查不到仓库,过后我添加加完仓库过后就可以查到了 -
git clone 克隆远程仓库
先复制需要克隆的仓库地址
人后再执行git clone 后面跟刚刚赋值的地址
-
git push 推送远程仓库
注释:第一次提交的时候需要校验一下用户和密码,输入git上的用户名和密码就可以了,以后就直接push就可以了 -
git pull 拉取代码
-
拉取成功:
-
本地仓库和git仓库是一样的
注意:如果当前本地仓库不是从远程仓库克隆,而是本地创建的仓库,并且仓库中存在文件,此时再从远程仓库拉取文件时候会报错(fatal:refusing to merge unrelated histories)
如果需要解决这个问题的话可以在git pull 命令后面加入参数–allow-unrelated-histories
输入过后会出来(输入i)
这里记录的是信息,可以随意写
输入完了过后我们按esc退出编辑,然后输入:wq退出编辑,然后会出现
这种情况就同步完成了
,5,分支操作*
git branch 查看分支
git branch [name] 创建分支
git checkout [name] 切换分支
git push [shortName] [name] 推送远程仓库分支
git merge [name] 合并分支
-
git branch 查看分支
-
1)git branch 列出所有本地分支
-
-
2)git branch -r 列出所有远程分支
-
-
3)git branch -a 列出所有的本地分支和远程分支
-
-
git branch [name] 创建分支的命令格式
注意:这个地方我们创建的分支实在本地的而不是git上的,前面的星号是说明我们本地仓库处于那条分支上(绿色) -
git checkout [name] 切换分支
-
再查看一下我们的分支现在就是b1是绿色的了
-
git push [shortName] [name] 推送至远程仓库分支
-
git merge [name] 分支合并
合并成功:
6,标签操作
git中的标签指的是某个分支某个特定时间点的状态。通过标签,可以很方便的切换到标记时的状态。
git tag 列出已有标签
git tag [name] 创建标签
git push [shortName] [name] 将标签推送至远程仓库
git checkout -b [branch] [name] 检出标签
- git tag 列出已有标签
- git tag [name]创建标签
- git push [shortName] [name] 将标签推送至远程仓库
注意:这个地方一定是先创建标签过后然后再进行推送 - git checkout -b [branch] [name]检出标签再重新赋予新标签
- 注意:这里切换完标签过后我们的工作区的文件也会是当前标签的提交在git的内容