文章目录
Git
1. git介绍
-
Git是一个分布式**
版本控制工具
,主要用于管理开发过程中的源代码文件**(Java类、 xml文件、html页面等) ,在软件开发过程中被广泛使用。 -
git作用:代码回溯、版本切换、多人协作、远程备份
2. Git概述
2.1 Git简介
-
Git是一个
分布式版本控制工具
,通常用来对软件开发过程中的源代码文件进行管理。通过Git仓库来存储和管理这些文件,Git 仓库分为两种:- 本地仓库:开发人员自己电脑上的Git仓库
- 远程仓库:远程服务器.上的Git仓库
-
commit:提交,将本地文件和版本信息保存到本地仓库
push:推送,将本地仓库文件和版本信息上传到远程仓库
pull:拉取,将远程仓库文件和版本信息下载到本地仓库
2.2 Git下载与安装
-
git下载地址:Git - Downloads (git-scm.com)
-
安装完成:右键目录可看见红色方框中的:
3. Git代码托管服务
3.1 常用的Git代码托管服务
gitHub
(地址: https://github.com/ ),是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名gitHub码云
(地址: https://gitee.com/ ),是国内的一个代码托管平台,由于服务器在国内,所以相比于GitHub,码云速度会更快GitLab
(地址: https://about.gitlab.com/ ),是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务BitBucket
( 地址: https://bitbucket.org/) , 是一家源代码托管网站,采用Mercurial和Git作为分布式版本控制系统,同时提供商业计划和免费账户
3.2 使用码云代码托管服务
-
操作流程:
- 注册码云账号
- 登录码云
- 创建远程仓库
- 邀请其他用户成为仓库成员
-
创建远程仓库
注
:每个Git远程仓库都会对应一个网络地址,点击[克隆/下载]按钮,在弹出窗口点击[复制]按钮获得网络地址
4. Git常用命令
4.1 Git全局设置
-
当安装Git后首先要做的事情是设置用户名称和email地址。这是非常重要的,因为每次Git提交都会使用该用户信息。
-
在Git命令行中执行下面命令:
-
设置用户信息
git config --global user.name "itcast" git config --global user.email "hello@itcast.cn"
-
查看配置信息
git config --list
-
注意
:上面设置的 user.name 和 user .email 并不是我们在注册码云账号时使用的用户名和邮箱,此处可以任意设置。
-
4.2 获取Git仓库
-
获取Git仓库通常有两种方式:
- 在本地初始化一个Git仓库(不常用)
- 从远程仓库克隆 (常用)
-
在本地初始化Git仓库
- 执行步骤如下:
- 在任意目录下创建一个空目录(例如repo1)作为我们的本地Git仓库
- 进入这个目录中,点击右键打开Git bash窗口
- 执行命令git init
- 如果在当前目录中看到.git文件夹(此文件夹为隐藏文件夹)则说明Git仓库创建成功
- 执行步骤如下:
-
从远程仓库克隆
-
将远程仓库克隆到本地
git clone [远程Git仓库地址]
-
4.3 工作区、暂存区、版本库概念
- 版本库:.git隐藏文件夹就是版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等
- 工作区:包含.git文件夹的目录就是工作区,也称为工作目录,主要用于存放开发的代码
- 暂存区:.git文件夹中有很多文件,其中有一个index文件就是暂存区,也可以叫做stage。暂存区是一个临时保存修改文件的地方
4.4 Git工作区中文件的状态
-
Git工作区中的文件存在两种状态:
-
untracked 未跟踪(未被纳入版本控制)
-
tracked 已跟踪( 被纳入版本控制)
1)Unmodified未修改状态
2)Modified已修改状态
3)Staged已暂存状态
-
-
注意
:这些文件的状态会随着我们执行Git的命令发生变化
4.5 本地仓库操作
-
本地仓库常用命令如下:
- git status 查看文件状态
- git add 将文件的修改加入暂存区
- git reset 将暂存区的文件取消暂存或者是切换到指定版本
- git commit 将暂存区的文件修改提交到版本库
- git log 查看日志
4.6 远程仓库操作
-
远程仓库的一些操作:
- git remote
查看远程仓库 - git remote add
添加远程仓库 - git clone
从远程仓库克隆 - git pull
从远程仓库拉取 - git push
推送到远程仓库
- git remote
-
注意
:在使用git push命令将本地文件推送至码云远程仓库时,需要进行身份认证,认证通过才可以推送 -
从远程仓库拉取
-
注意
:如果当前本地仓库不是从远程仓库克隆,而是本地创建的仓库,并且仓库中存在文件,此时再从远程仓库拉取文件的时候会报错(fatal: refusing to merge unrelated histories ) -
解决此问题可以在 git pull 命令后加入参数:
--allow-unrelated-histories
-
4.7 分支操作
-
分支是Git使用过程中非常重要的概念。使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。
-
同一个仓库可以有多个分支,各个分支相互独立,互不干扰。
-
通过 git init 命令创建本地仓库时默认会创建一个master分支。
-
分值相关命令
- git branch
查看分支 - git branch [name]
创建分支 - git checkout [name]
切换分支 - git push [shortName] [name]
推送至远程仓库分支 - git merge [name]
合并分支
- git branch
4.8 标签操作
-
Git中的标签,指的是某个分支某个特定时间点的==状态==。通过标签,可以很方便的切换到标记时的状态。
-
比较有代表性的是人们会使用这个功能来标记发布结点(v1.0 、v1.2等)。
-
标签相关命令
-
git tag
列出已有的标签 -
git tag [name]
创建标签 -
git push [shortName] [name]
将标签推送至远程仓库 -
git checkout -b [branch] [name]
检出标签
-