git 知识点
-------------------------------------------------Git常用命令--------------------------------------------------------------------
云端需求一个存放代码的地方:
公共:
- github,做代码托管
- 码云,做代码托管
- csdn code,做代码托管
内部搭建:
- gitlab
其他操作:
git config --global user.email "you@example.com"------------------------------设置邮箱
git config --global user.name "Your Name"-------------------------------------设置用户名
ls----------------------------------------------------------------------------查看文档状态
cd----------------------------------------------------------------------------跳转文档
mkdir-------------------------------------------------------------------------创建文件夹
touch a1.php -----------------------------------------------------------------创建a1.php文件到工作目录
vi----------------------------------------------------------------------------修改文件
status------------------------------------------------------------------------查看状态
git.push----------------------------------------------------------------------添加到远程命令仓库
用户名.github.io1-------------------------------------------------------------创建个人站点 -> 新建仓库(注:仓库名必须是【用户名.github.io】)
vim 文件名--------------------------------------------------------------------编辑文件
cd ..-------------------------------------------------------------------------退出文件
:----------------------------------------------------------------------------保存
:wq---------------------------------------------------------------------------退出
删除仓库文件:
第1步:rm -rf 文件名
第2步:git rm 文件名
第3步:git commit -m"xxxx"
阶段一:
git add .:------------------工作区添加到版本库
git commit -m"" :----------暂存区添加到分支
工作区:
原内容----------------->自动检测------------------>修改过的内容
版本库:
暂存区----------------->git commit -m""-------------------------->分支
开发功能一:
1:git init --------------------------------------初始化
2:git status-------------------------------------查看状态
2:git add .----------------------------------------增加
3:git commit -m "..."----------------------------增加到版本库
4:git log ---------------------------------------查看版本库的日志
开发功能二:
1:git add----------------------------------------增加
2:git commit -m "..."----------------------------增加到版本库
3:git log ---------------------------------------查看版本库的日志
4:git reset --head 版本号 -----------------------------切换到功能一
切换到功能一:
1:git reflog ------------------------------------查看所有的版本库
2:git reset --head 版本号-----------------------------切换到功能一
切换到功能二:
1:git reflog ------------------------------------查看所有的版本库
2:git reset --head 版本号-----------------------------切换到功能二
阶段二:
开发功能一:
1:git add----------------------------------------增加
2:git commit -m "..."----------------------------增加到版本库
3:git log ---------------------------------------查看版本库的日志
解决bug方法一:-------------------------------------------------------------------------首先保存,修复bug完成后,再pop回来。
继续开发,发现之前上线的代码需要修改,把现在的代码保存。
1:git stash-------------------------------------现在开发的代码,保存
完成功能一:
2:git log ---------------------------------------查看版本库的日志
3:git reset -- head-----------------------------切换到功能一
4:git add----------------------------------------增加
5:git commit -m "..."----------------------------增加到版本库,提交
继续开发之前的功能,发生冲突手动解决冲突
1:git stash pop -------------------------------------将第一个记录从“某个地方”重新拿到工作区(可能有冲突)
2:git add .------------------------------------------增加到版本库
3:git commit -m "..."---------------------------------增加到版本库,提交
git stash --------------------------------------------------------将当前工作区所有修改过的内容存储到“某个地方”,将工作区还原到当前版本未修改过的状态
git stash list----------------------------------------------------查看“某个地方”存储的所有记录
git stash clear---------------------------------------------------清空“某个地方”
git stash pop-----------------------------------------------------将第一个记录从“某个地方”重新拿到工作区(可能有冲突)
git stash apply --------------------------------------------------编号,将指定编号记录从“某个地方”重新拿到工作区(可能有冲突)
git stash drop --------------------------------------------------编号 ,删除指定编号的记录
解决bag方法二:(分支)---------------------------------------------------------------------创建分支
bug分支
master分支
dev分支
1:git branch dev------------------------------------创建dev分支
2:git branch -d dev---------------------------------删除分支
3:git checkout dev----------------------------------切换分支
4:git merge dev ------------------------------------分支合并
5:git branch----------------------------------------查看分支
修复Bug流程:
git branch dev--------------------------------------创建dev分支
git checkout dev -----------------------------------切换分支
写代码
git add .-------------------------------------------增加到版本库
git commit -m 'xxx'---------------------------------提交
切换master
git checkout master---------------------------------切换master
git branch bug--------------------------------------创建bug分支
git chekcout bug -----------------------------------切换到bug分支
修复bug
git add .-------------------------------------------增加到版本库
git commit -m '紧急修复bug'-------------------------提交
切换master分支
git checkout master---------------------------------切换master
git merge bug --------------------------------------合并分支
删除bug分支
git branch -d bug-----------------------------------删除bug分支
切换dev分支
git checkout dev
继续开发
阶段三:
家里:
写代码
git add .-----------------------------------------------------------------------------增加
git commit -m 'xx'--------------------------------------------------------------------提交到版本库
git remote add origin https://github.com/WuPeiqi/greenlu.git -------------------------为地址起一个别名origin
git push origin master----------------------------------------------------------------将本地master分支内容以及版本信息推送到GitHub
git push origin dev-------------------------------------------------------------------将本地dev分支内容以及版本信息推送到GitHub
公司:
新公司第一次获取代码:
方式一:
git clone https://github.com/WuPeiqi/greenlu.git------------------------------克隆
git init
方式二:
git remote add origin https://github.com/WuPeiqi/greenlu.git------------------仓库地址
git pull origin master -------------------------------------------------------将master分支从Gitup上拉下来
git init
方式三:
git remote add origin https://github.com/WuPeiqi/greenlu.git------------------仓库地址
git fetch origin master ------------------------------------------------------去仓库获取
git merge origin/master ------------------------------------------------------和网上下的master分支合并
日后
git pull origin master -----------------------------------------------------------从仓库拉到工作区
git fetch origin master ----------------------------------------------------------从仓库拉倒分支
git merge origin/master ----------------------------------------------------------当前分支和网上下的master分支合并
开发流程:
默认是master分支
1:创建dev分支---------------------------------------------------------用于开发的分支
2:切换到dev分支-------------------------------------------------------git checkout dev
写代码
git add .-------------------------------------------增加到版本库
git commit -m 'xxx'---------------------------------提交
3:若有bug需要修复,首先切换到master分支---------------------------------git checkout master
4:创建bug分支-----------------------------------------------------------git branch bug
5:切换到bug分支---------------------------------------------------------git chekcout bug
修复bug
git add .-------------------------------------------增加到版本库
git commit -m '紧急修复bug'-------------------------提交
6:切换master分支--------------------------------------------------------git checkout master
7:合并分支--------------------------------------------------------------git merge bug
8:删除bug分支-----------------------------------------------------------git branch -d bug
9:切换dev分支-----------------------------------------------------------git checkout dev
继续开发
协同开发:
默认是master分支--------------------master
开发的分支--------------------------dev
做代码review------------------------reciew
程序员自己的分支--------------------.......
1:每个员工创建自己的分支
2:将自己的代码提交的到自己的分支----------xxx,sss,wwww.......
3:由组长或老大做代码的review,-------------代码提交的review分支
4:再提交到dev.
5: 再合并到master分支
1:添加合作者:
Settings--------------->Collaborators--------------------->添加合作者GItup账号
2:添加组织:
点击Gitup导航栏上的加号------------>New organizaation------------>Settings--------------->Invite mnber(邀请新成员)
权限:Settings--------------------->Member mrivileges------------>默认是读,可以更改。
Git之忽略文件和ssh.mp4---------------------------------------------不需要提交的文件。
创建gitignore文件,文件中写不需要提交的文件---------------------vim .gitignore
注意事项:
- .gitignore 文件
- 认证
SSH:
git remote add origin git@github.com:ugfly1210/git_projects.git
Https:
https://github.com/ugfly1210/git_projects.git