SVN
简介:它是一个集中式版本控制工具,具有中央服务器,从中央服务器同步到电脑,必须联网才能进行工作。
1.安装TSVN
2.SVN基本操作
- 添加文件:找到随便一个受SVN控制的文件夹,在里面添加文件,然后在该文件夹点击右键提交即可
- 删除文件:选择文件右键点击TSVN的删除按钮,然后返回上一级文件夹右键点击提交即可
- 移动文件:右键找到TSVN的“版本库浏览器”,随意拖拽文件的位置即可实现文件的移动效果;然后点击更新(注意:如果是在服务器的版本库浏览器设置,直接可以实现一个默认的提交,如果不是则必须回到上级目录点击提交才可以)
- 更新至版本:右键–更新至版本–显示日志–找到想要的版本,点击确定即可
注意:这里SVN检出是从自己建的的SVN版本库导入到本机的,公司里填的是服务器的地址(由公司提供),导出的是电脑本机地址
Git
简介:它是分布式版本控制系统,它没有中央服务器,每个人的电脑就是一个完整的版本库,工作不需要联网。
1.安装git
在桌面右键点击git bash进入 输入 git --version(查看版本)
2.git最小配置
在命令行输入 git config --global --list(查看配置信息)
如果需要重新设置 可输入 git config --global user.name “新的名字”
git config --global user.email “新的邮箱”
3.建立git仓库
在已存在的文件 在空白处右键点击git bash 输入 git init
4.git提交版本
在git仓库里 新建一个文件 在空白处右键进入git bash 输入 git add 文件名
然后 git commit -m "提交的内容信息"
输入 git log 既可查看添加的文件信息
5.版本状态查看
git status
git status -s(简化信息)
6.查看历史版本信息
git log
git log --pretty=oneline 只显示一行
git log -p 显示各版本之间的区别
git log -5 显示最近5个版本
git log -5 -p
git log --stat 查看大体的统计信息
7. 忽略特殊文件
在git工作区的根目录下创建一个特殊的.gitignore文件,然后把忽略的名字填进去,git就会忽略这些文件
不需要从头写.gitignore文件,GitHub已经为我们准备了各种配置文件,只需要组合一下就可以使用了。所有配置文件可以直接在线浏览
https://github.com/github/gitignore
#–注释
glob 模式匹配:
星号(*):匹配0或者任意字符
[abc]:任何一个在括号内的字符
[0-9]:0-9的字符
?:匹配一个任意字符
/:结尾指定目录
!:取反
8.配置sshKey
- 在此目录D:\all\git\Git\usr\lib\ssh右键进入git bash输入ssh-keygen -t rsa -C"你的邮箱地址";接着一直敲回车
- 进入~/.ssh(用户目录下的.ssh文件夹)
- 右键进入git bash输入ssh-keygen -t rsa -C"你的邮箱地址";接着一直敲回车
- 输入cat id_rsa.pub获取公钥复制到GitHub网站上
9.创建、克隆、拉取和推送操作
创建:在GitHub上创建一个项目即可
克隆:进入要克隆的文件夹的git工作区,输入 git clone 链接地址(从GitHub上复制过来)
推送:git push 要先创建一个文件 (使用vim命令创建的方法:1.vim +要创建的文件名;2.进入到vim编辑器 输入内容;3.按esc+shift+;键 即esc+冒号键 ,然后输入wq 保存退出);创建后是git 提交 (先git add 文件名;后git commit -m “文件说明的内容”);最后推送(git push)
拉取:git pull(作用:使得本地与GitHub仓库里的信息保持一致)
10.分支操作
1.查看分支:git branch:查看本地的分支;git branch -a:查看远程的分支
2.创建分支:
创建分支:git branch 名字
切换分支:git checkout 名字
创建+切换分支:git checkout -b 新的分支名字(例如:branch1)
推送到GitHub :更改克隆的文件并保存 ,重新git提交(git add 文件名–>git commit -m “内容信息”),然后 git push,根据报错信息操作(复制报错的操作信息:git push --set-upstream origin branch1进行操作)即可
3.删除分支: git branch -d 名字(只是删除了本地的分支) ;
git branch -r -d origin/名字(是删除了远程的分支,但GitHub上的没有删除)
git push orgin :名字(GitHub上的也被删除了)
4.合并分支
合并某分支到当前分支:git merge 名字
10.版本回退
- git reset --hard Head^ (代表回退到前一个版本,两个 ^ 代表回退到前两个版本,依次类推);
- git reset --hard Head~100 (代表回退到前100个版本);
- git reset --hard 版本号 (版本号可以通过 git reflog 得到);