SVN(集中式版本控制系统):
版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆。
Git(分布式版本控制系统):
首先,分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?比方说你在自己电脑上改了文件A,你的同事也在他的电脑上改了文件A,这时,你们俩之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。
和集中式版本控制系统相比,分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一个就可以了。而集中式版本控制系统的中央服务器要是出了问题,所有人都没法干活了。
在实际使用分布式版本控制系统的时候,其实很少在两人之间的电脑上推送版本库的修改,因为可能你们俩不在一个局域网内,两台电脑互相访问不了,也可能今天你的同事病了,他的电脑压根没有开机。因此,分布式版本控制系统通常也有一台充当“中央服务器”的电脑,但这个服务器的作用仅仅是用来方便“交换”大家的修改,没有它大家也一样干活,只是交换修改不方便而已
Git命令:
workspace:工作区
staging area:暂存区/缓存区
local repository:版本库或本地仓库
remote repository:远程仓库
:wq enter
git全局设置:
git config --global user.name "hwm_ming"
git config --global user.email "8831902+hwm-ming@user.noreply.gitee.com"
创建仓库:
git init - 初始化仓库
git clone -拷贝一份远程仓库,也就是下载一个项目。(github和gitee有链接)
提交与修改:
git add 添加文件到暂存区
git add [file1] [file2] ... 添加一个或多个文件到暂存区
git add [dir] 添加指定目录到暂存区,包括子目录
git add . 添加当前目录下的所有文件到暂存区:
git diff 比较文件的不同,即暂存区和工作区的差异。
git status 查看仓库当前的状态,显示有变更的文件 git status -s 简短结果
git commit 提交暂存区到本地仓库 git commit -m [message] [message] 可以是一些备注信息。
git reset 回退版本。
提交日志:
git log 查看历史提交记录。 git log --oneline 查看历史记录的简洁的版本。
远程操作:
git remote -v 查看远程仓库信息
git push 将本地的分支版本上传到远程并合并
git push <远程主机名> <本地分支名>:<远程分支名>如果本地分支名与远程分支名相同,则可以省略冒号:git push origin master
git pull 从远程获取代码并合并本地的版本。
分支:
ls 查看当前目录下所有文件
git branch (branchname) (模板名) 创建分支
git branch 查看分支
git checkout <branch_name> #切换到指定分支
git checkout -b <branch_name> #创建并切换到指定分支
git merge (分支名) 合并分支
git branch -d (branchname) 删除分支
一般流程:git init -> git add . -> git commmit -m "提交信息"
git小乌龟的使用:
1.创建本地仓库:
2.提交:
3.推送 push:
如果服务器版本比我们新则不会推送不成功,需要先拉取
4.拉取 pull
拉取时应确保工作区整洁(先提交本地再拉取服务器的变化)
5.分支
版本分支图:
右键分支选择可删除该分支
创建分支:
切换分支:
合并分支:
先要切换到主分支,然后
6.冲突解决:
冲突产生原因:两个分支修改了同一个文件,合并的时候会发生冲突
7.忽略:
添加忽略文件:git命令行:touch .gitignore
语法规则:百度
8.版本回退
在版本日志界面选择一个节点,使用重置(Reset)命令
gitee代码托管平台:
新建仓库:
克隆:
https:非开源:每次要输入账号和密码 开源:不需要输入账号和密码
ssh:
创建公钥和私钥:
1.Git GUI Here -> Help -> Show SSH Key -> Generate Key(无密码) -> OK
2.生成位置是在C盘当前用户下.ssh
3.Copy ToClipboard
4.gitee个人主页 -> SSH公钥
报错解决办法:
(111条消息) git报错 Disconnected:No supported authentication methods available_freedom_文的博客-CSDN博客https://blog.csdn.net/freedomVenly/article/details/89285011Issues:讨论
Pull Requests:拉取请求