Git是一款分布式源代码管理工具,在本地和远程服务器上都有Git版本库。

要想熟练使用Git,我们必须理解Git的工作原理:在本地仓库中,工作区文件需要先被添加进暂缓区,然后暂缓区提交到分支,最后需要上传到远程服务器仓库。

下面内容基于Git已经安装完毕的情况下:
单人开发
一、准备工作(只做一次)
- 创建一个工作区,在工作区中打开git终端,使用 git init 指令初始化git版本库
- 通过
git config user.name "姓名"
、git config user.email "邮箱"
,在git config文件中添加使用者信息(必须设置,不设置要挨骂) - 添加完成后通过
git config -l
指令查看是否添加成功。
二、开发阶段(反复执行)
- 编写代码
- 通过
git add 文件名称
或git add .
指令将文件添加到版本库的暂缓区中 - 通过
git commit -m"说明"
将暂缓区的文件添加到HEAD指针指向的分支中
(默认只有一个分支, master分支, 也称之为主分支)
注意点:
① 不是写一句代码就add commit一次, 应该是完成一个功能后再add commit
② commit时-m注释一定要认真编写, 与当前提交内容保持一致, 否则要挨骂
单人使用Git管理项目好处:
① 可以通过git status
查看哪些文件没有被管理, 修改了哪些文件
红色(没有被管理或者被修改了)、绿色(在暂缓区)
② 可以通过 git diff
查看具体修改了哪些代码
③ 可以通过git log / git reflog
查看项目演变历史
④ 可以通过git reset --hard
版本号 在任意版本之间切换
⑤ 无需备份多个文件, 每次commit提交Git会自动备份
多人开发
一、在远程服务器上创建一个共享版本库
- 打开远程服务器,创建一个工作区,并在工作区上运行Git终端
- 在终端工具中输入命令
git init --bare
创建共享版本库
二、开发人员下载远程版本库
- 开发人员在自己电脑上打开Git终端
- 使用命令
git clone
远程服务器共享版本库地址,从远程服务器上下载当前项目共享版本库
(和单人开发使用Git的区别:单人开发是自己创建版本库,而多人开发是从远程服务器下载版本库)
三、进入开发阶段
跟单人开发使用相同
-
设置config中的用户名和邮箱
-
编写代码
-
git add .
添加文件到暂缓区 -
git commit -m"说明"
添加到HEADER指针指向的分支
(commit是将编写好的代码提交到本地的版本库,其他开发人员是拿不到我们提交的代码的,如果想要其他开发人员也能拿到我们提交的代码,需要将编写好的代码提交到远程服务器) -
将代码提交到远程服务器指定分支:
git push origin 分支名称
-
其他开发人员只需要通过
git pull
就可以拿到更新的内容
多人开发使用Git的注意点:
① 不能将不能运行的代码提交到本地和远程服务器(切记一定不能)
② 如果服务器上有其它开发人员的更新内容, 那么不能直接通过push将我们的代码提交到服务器,必须先将其它开发人员更新的内容更新到本地之后才能通过push提交我们的内容
③ 如何我们更新的内容和其它同事更新的内容有冲突(修改了同一个文件的同一行代码), 这个时候需要我们自己手动修改冲突, 修改完冲突之后才能将代码提交到远程服务器
开发技巧:
只要开发完了一个功能就要立即提交代码,因为在企业开发中谁后提交谁就负责解决冲突,谁的工作量就大。
分支
一、如何查看有多少个分支
通过git branch
指令就可以查看当前版本库中有多少个分支
注意点:
① 如果当前的版本库是空的, 那么无法查看
② 如果通过git branch指令查看当前版本库中有多少个分支, 输出的内容中哪一个分支前面有*号,就代表当前的HEADER指针指向哪一个分支, 我们提交的代码就会提交到指向的分支中
二、如何创建一个分支
通过git branch 分支名称
来创建一个新的分支
注意点:
① 在哪个分只能中创建了新的分支,那么创建出来的新分支就会继承当前分支的所有状态。
例如:在master分支中做了两个操作,然后在master分支中创建了Dev分支,那么创建出来的Dev分支就会继承master分支中的这两个操作。
② 一旦分支被创建出来,分支就是独立的,分支之间不会相互影响
三、如何切换分支
通过git checkout 分支名称
来修改HEADER指针的指向
注意点: 只要HEADER指针的指向发生了改变, 那么commit的代码就会发生改变,HEAD指针指向谁,commit提交的代码就提交到谁里面去
四、如何将分支提交到远程服务器
- 通过
git branch -r
来查看远程服务器有多少分支 - 首先在本地切换到新建的分支中,然后通过
git push origin 分支名称
指令提交新建的分支到远程的服务器。
五、如何合并分支
可以通过git merge 分支名称
来合并分支
例如1:
在master分支中执行git merge Dev,就代表需要将Dev中的代码都合并到master中
例如2:
在Dev分支中执行git merge master,就代表需要将master中的代码都合并到Dev中
六、如何删除分支
- 可以通过
git branch -d
分支名称 来删除本地的分支 - 可以通过
git push origin --delete
分支名称 来删除远程服务器的分支
七、如何拉取指定分支的代码
git clone -b 分支名称 git地址
Git忽略提交规则:
如果不想让某些文件被git,使用命令touch .gitignore
创建.gitignore文件,在里面添加相应的忽略规则即可。
总结
一般情况下,我们按照如下顺序提交代码:
git add/commit/pull/push
网友评论