什么是git?
分布式版本控制系统,
首先版本控制,意思是自动帮你记录每个文件的修改,每次的修改后的文件都算是一个版本
分布式,不同于集中式,首先集中式必须有网络,才能从中央服务器拿到最新版本再开始修改文件,分布式的话,每个人的电脑都有一个完整仓库,当然也要有一台充当服务器,但是这个服务器作用只是方便交换大家的修改而已,没有的话也行,只是不方便。
相关操作init初始化,add,commit,status,log
1。。。git reset --hard HEAD~ 多少个~就回退几个版本,要么就直接--hard 后面填ID,6为就行了,但是此时最新的版本就会消失了,怎么办?用git reflog可以查看全部
2.。。git checkout -- 文件名 添加了没提交,又修改了
什么是github
它就是充当那个服务器的角色,提供git仓库托管服务的,
远程仓库
每台电脑都只能生成一个公钥,有了这个才能推送,有了ssh才能推送
git merge 分支名 git branch -d 分支名
什么是冲突
一个新的分支修改了a文件,提交了。。
master分支也修改了a文件,提交了,
切换到master分支,merge新分支的时候,有冲突,两个都不一样,不能合并,要手动修改a文件,再add,commit
git log --graph。。。这个可以看到那个分支图
正常开发流程
master--不在上面开发,只用来发布稳定版本
全部在分支开发,
merge 分支名 ----属于快速合并,看不到合并记录
git merge --no-ff -m "merge with no-ff" dev 可以看到合并记录
可以flok别人的仓库到自己账号,然后本地clone,修改推送后,pull request给拥有者
原文链接:/github/417385.html