git——版本控制工具
-
一、git是什么工具?
版本控制工具 -
二、git起到了什么作用?
代码管理,上传,下载,版本回退 -
三、下载安装
网址:https://git-scm.com/
测试是否安装成功:git --version -
四、从仓库下载代码
国内:码云 https://gitee.com
国外:github github.com
命令:git clone 地址 -
五、创建仓库
1、访问到码云(或者github平台)
2、登录、注册
3、登陆后新建仓库
4、克隆 git clone 地址 -
六、将本地代码以及文件提交到远程仓库
1、Git全局设置
git config --global user.name '张三'
git config --global user.email '123@qq.com'
-
七、将远程仓库和本地机器的链接
设置-->ssh公钥 -
八、生成SSH公钥:https://gitee.com/help/articles/4181
终端运行
a、ssh-keygen -t rsa -C "xxxxx@xxxxx.com"
*******回车+y
b、cat ~/.ssh/id_rsa.pub
如果遇到cat 报错可以使用type尝试
把运行后的代码复制粘贴到SSH公钥配置中
-九、上传代码
git add .
//提交所有代码到中转站(注意后面有个空格+ .)
git commit -m '注释内容'
//提交所有代码到本地仓库
git push
//提交本地仓库到码云
-
十、团队开发遇到什么样的问题?
1、备份多个版本,费时间空间
2、难以恢复到以前的版本
3、难以解决代码冲突问题
4、难以追溯问题以及修改任何修改时间
5、无法进行权限控制 -
十一、svn和git的区别
svn:集中式管理 (断网就会中断)
git:分布式管理(断网不会中断,有本地server(暂缓区),可以上传到本地) -
十二、Git详细命令
1、初始化仓库 git init
2、查看配置 git config -l
*****必须配置user.name 和user.name
3、查看状态 git status
红色的:没有被git管理
路色的:存储在版本库暂缓区
4、添加到暂缓区 git add . 。. 代表所有文件,制定某一个文件 git add index.js
5、添加到分之中 git commit -m '注释内容'
6、查看修改文件 git diff
查看某一个文件 git diff index.js
查看所有文件:git diff
7、查看修改历史 git log
查看某一个文件历史 git log index.js
查看所有文件历史 git log
8、查看修改历史【简单形式】 git reflog
9、回到之前的版本
回到上一个版本git reset --hard HEAD^
回到制定版本 git reset --hard 版本号
10、拉取最新代码 git pull
-
十三 多人开发解决冲突问题
git pull
git push -
十四 分支操作
*****默认主分支:master
1、查看本地分支 git branch
2、新建分支 git branch 分支名称
3、切换分支 git checkout 分支名称
4、如何查看远程仓库的分支 git branch -r
5、把本地分支提交到远程仓库中 git push --set-upstream origin 分支名称
6、删除本地分支 git branch -d 分支名称
7、删除远程仓库分支 git push origin --delete 分支名称
8、下载仓库中制定分支的代码 git clone -b 分支名称 -
十五、合并分支
1、分支是独立的,互相不影响
注意:在一个分支下创建另一个新的分支,新的分支会继承旧的分支。
2、合并分支
git merge 分支名称
注意:如果当前是在master分支下写入:git merge 分支名称,那么master和新的分支会合并,相当于master + 分支名称
3、切换到线上指定分支 git checkout -b 分支名称 -
十六 、 Gitflow 工作流(中、大型项目)
master :用于保存上线版本代码,创建dev分支
develop:用于保存相对稳定版本的代码,所有的feature都是dev分支创建的
feature:用于开发某几个功能, 不同的功能可能会创造不同的分支
release:用于代码上线前的准备(测试,bug修复),是dev创建的
bugfix:用于修复不紧急的bug
hotfix:用于修复紧急的bug