GIt概念
是一种分布式控制管理器
tips:敏捷开发 -> 先上线,后续开发再继续开发
集中式和分布式
集中式的版本控制系统每次在写代码时都需要从服务器中拉取一份下来,并且如果服务器丢失了,那么所有的就都丢失了,你本机客户端仅保存当前的版本信息,换句话说,集中式就是把代码放在一个服务器上集中管理,你的所有回滚等操作都需要服务器的支持。
分布式的版本控制系统,那么每个人的电脑都是服务器,当你从主仓库拉取一份代码下来后,你的电脑就是服务器,无需担心主仓库被删或者找不到的情况,你可以自由在本地回滚,提交,当你想把自己的代码提交到主仓库时,只需要合并推送到主仓库就可以了,同时你可以把自己的代码新建一份仓库分享给其它人
解决宕机问题,
如果是git先从远程仓库clone下来,则是需要在本地仓库中进行commit操作(先有远程仓库)
如果是先有本地仓库的话 -> 要先与远程仓库做关联
推荐第一种方式
本地仓库到远程仓库的提交是push
本地仓库的提交是commit
理解
你的项目名 + .git文件 -> 本地仓库
clone了远程仓库 -> 业务code编写在workspace -> 暂存区Index Stage(add命令)
test目录 -> 进入java6目录 -> git bash here ->
初次需要登录 git clone 远程仓库的https地址 done java6目录下得到本地仓库 -> 根目录创建项目文件
-> A.java例如或者index.htm -> 此时是未提交状态 进入
git status
git .
git status
找到gitee仓库的远程仓库
git log查看日志
必须起文件名操作:修改
vi .gitignore 进行设置
不要在远程仓库直接修改文件 你在远程仓库直接修改后(比如加了sleep方法)
我在本地有加入drive方法
git add .
git commit -m '张三添加了drive方法'
// 暂时不加git pull(按理来说)
git remote
orgin
git push orgin master
需要:先pull
手动合并(你改我也改)
work-demo第一次
版本回退问题
分类:已经commit但没有push/已经commit的并且已经push的
git reset --soft .......
idea合并冲突?(重要)
(记得需要先pull)
GIt实操
Git:就是把我们的代码提交到远程仓库当中去
输入git init把这个目录变成一个git仓库
第二步:把我本地的git仓库与远程连接起来
git remote add origin address
git remote -v:查看当前的远程仓库有哪些?
上面只是提交了仓库 还没有提交我仓库的所有代码
提交代码:
git add:把你本地的所有的文件添加到一个暂存区 然后再从你的暂存区里面
把你的所有文件存在真正的企业仓库里面去啊
但是提交的时候有些东西不想提交上去(额外文件不需要) -> .ideal
这个时候需要新建一个.gitignore文件
接上之前的 提交代码部分:
git add .
git status查看当前那些文件进入到暂存区
好了暂存代码部分完成(现在所有的文件都存到了一个暂存区之后啊)
开始提交code
git commit -m "初次提交" -> 这个命令就是把你暂存区的文件提交到你的仓库里面去(本地仓库)
接下来就是把本地仓库的东西通过push命令到远程仓库就行了
git push -u origin "master"(初次需要进行git登录)
.注意因为你的远程仓库里面进行了一次提交后,执行该命令会报错
要先pull再去push
.出现bug:
.
强制覆盖远程仓库
git pus -f origin "master"
记得关联远程仓库
git remote add origin "远程仓库地址"