Appearance
GIT
学习目标
- 【了解】版本控制的概念
- 【掌握】GIT的常用命令
- 【掌握】远程仓库的基本使用
- 【了解】GIT的分支操作
版本控制
当多人协作开发项目的时候,当项目版本需要迭代的时候,一个优秀的代码版本控制工具会大大提效开发效率,GIT就是当前最流行的分布式代码管理工具,我们可以通过图形化界面或者命令行的方式来使用GIT,对于任何语言的程序员而言,GIT都是一门必备的开发技能。
GIT比起其他工具有着2个最明显的特点:
版本控制:可以解决多人同时开发的代码问题,也可以解决找回历史代码的问题
分布式:Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上。首先找一台电脑充当服务器的角色,每天24小时开机,其他每个人都从这个“服务器”仓库克隆一份到自己的电脑上,并且各自把各自的提交推送到服务器仓库里,也从服务器仓库中拉取别人的提交。可以自己搭建这台服务器,也可以使用GitHub/Gitee网站。
GIT的常用命令
前面已经提到,我们更推荐使用命令来进行Git操作,在此之前我们必须了解Git中的几个核心概念:
- 工作区(workspace) 编写代码的本地目录
- 暂存区(index) 暂存要提交的代码
- 本地仓库(repository) 管理本地的代码版本
- 远程仓库(remote) 管理代码的远程服务器
在本地安装好Git软件后,如果是第一次使用需要配置用户名/电子邮件地址让GIT记住你的身份:
git config --global user.name <username>
git config --global user.email <mailaddress>
我们先来关注本地仓库的基本操作:
- 首先通过
git init
命令初始化本地仓库 这样Git才能追踪工作区的所有文件,将其加入到版本控制中。 git add
可以将文件添加到暂存区git commit -m 注释
可以将暂存区的文件添加到本地仓库 并且通过注释的形式说明进行了何种操作git status
可以查看本地文件的状态 从而进行指定的操作- 如果修改了工作区的文件 再次执行上述操作 这样会生成多个版本信息
git log
命令可以查看详细的历史版本信息 - 如果你手动删除了工作区的文件,只要这个文件纳入了版本管理中,可以通过
git checkout 文件名
命令找回,如果希望彻底删除工作区的文件,可以使用git rm 文件名
的命令,需要明确,无论进行了什么操作后,要进行一次commit在本地仓库中保留版本信息。 git reset --hard 版本号
可以回溯到指定的版本
以上这些是最常用的git本地操作的相关命令,初学git的开发人员必须熟悉其使用场景。
远程仓库的基本使用
github是程序员的聚集地,它提供的远程仓库服务器开源了最优质的代码,任何程序员在学习的过程中都离不开它,国内也提供了类似的远程仓库gitee,它的使用和github流程几乎一致。
- 注册好gitee账号后通过网页端建立一个远程仓库
git remote add [shortname] [url]
添加远程仓库 将本地仓库和远程仓库连接起来git push [remote] [branch]
将本地仓库的分支推送到指定的远程仓库上git pull [remote] [branch]
将远程仓库的指定分支拉取到本地- 如果是拉去公共仓库的代码 可以使用
git clone [url]
的命令,这个命令会自动初始化一个本地仓库并且拉去远程代码,下载开源代码时会经常用到。
GIT的分支操作
在开发软件时,可能有多人同时为同一个软件开发功能或修复BUG,可能存在多个版本,并且需要对各个版本进行维护,Git的分支功能就是因此而诞生的。
列出所有本地分支
bash
git branch
新建一个分支,但依然停留在当前分支
bash
git branch [branch-name]
新建一个分支,并切换到该分支
bash
git checkout -b [branch]
切换到指定分支,并更新工作区
bash
git checkout [branch-name]
合并指定分支到当前分支(一般是主分支)
bash
git merge [branch]