当前位置: 首页 > 工具软件 > svn2git > 使用案例 >

版本管理工具 svn及git

商绍元
2023-12-01

SVN是一种集中式管理代码的版本控制系统,git是一种分布式的版本管理系统
idea使用SVN file->settings->version control 下的Subversion选项 use command line client 选择可执行文件svn.exe的地址 比如:F:\TortoiseSVN\bin\svn.exe
需要注意的是: TortoiseSVN在安装的时候 command line client tools 这块默认是不安装的,这样就没有svn.exe 文件,需要重新安装才可与idea集成

SubVersion 官网:http://subversion.apache.org/ 在这里既可以下载SVN 的服务器端VisualSVN,也可以下载SVN的客户端 TortoiseSVN

update item to revision 切换到历史版本

SVN将文件添加为忽略文件 TortoiseSVN ->settings->General下有个ContextMenu 里面有 Add to ignore list 选项,选中后即可出现在TortoiseSVN主要功能里 想忽略的文件右键即有忽略选项

SVN 的export导出时导出的纯文件 不包含.SVN隐藏文件
import 导入时选中一个文件夹,则把文件夹内的内容全部导入到指定的SVN仓库中,但文件夹不会

想把一个项目连项目名称等信息导入到svn某仓库,那么可以在idea中 vcs -> import into version control -> Share project (subversion)

在idea中忽略文件 在最下面 version control 上有个local Changes 点击后展示本地发生改变的文件, 右键文件可以 ignore

svn的目录结构
trunk主干
branches 分支 开发分支
tags 发布版本 里程碑式的版本 一般只读不再修改 而是一直升级 v1.0 v2.0
git的下载与安装
下载地址: https://git-scm.com/download 下载完毕,一路默认安装即可
常用git托管服务
github https://github.com/
gitlab https://about.gitlab.com/
码云 https://gitee.com

设置用户名称和email地址
git config --global user.name “qingtian”
git config --global user.email “123@163.com”
git config --list 查看所有配置信息
git config user.name 查看用户名

创建git本地仓库 进入想要创建git仓库的文件夹,在里面打开 gitbash命令行界面 执行 git init
将远程仓库克隆到本地 git clone 远程仓库地址 如果需要输入账号和密码,那么需要输入的是你要克隆的这个远程仓库的用户名和密码
git仓库里的隐藏文件夹.git 就是版本库
包含.git文件夹的目录就是工作目录(工作区)
.git文件中的index文件就是暂存区
工作目录改变的文件(git add)->暂存区(git commit)->版本库

git工作目录下文件的状态两种 untracked(未跟踪,即未交给git管理) tracked(已跟踪)
已跟踪的文件又有三种 unmodified(未修改) modified(已修改) staged(已暂存)

git status 查看文件的状态,详细信息
git status -s 查看文件的状态,简洁信息
git add 文件名 将新文件或改变的文件添加到暂存区
git reset Head 文件名 取消文件跟踪
git commit -m “提交记录” 会把暂存区的修改全部提交
git -rm 文件名 删除某个文件 这个动作会把删除操作添加到缓存区,也需要提交才能跟新版本库.
手动操作删除,因为没有将删除操作添加到缓存区,所以commit无法提交.想提交还需要将文件添加到缓存区再提交,或者提交的时候指定文件名
在工作区新建一个.gitignore 文件,不需要git管理也不需要提示未加入git管理的文件可以忽略

git log 查看操作日志
git remote 查看远程仓库 -v 显示详细抓取地址及push地址
git remote show origin 显示远程仓库的详细信息
git remote add origin 远程仓库地址 在本地仓库内操作,将本地仓库与远程仓库关联
git remote rm 远程仓库名称 移除本地仓库与远程仓库的关联

git fetch 从远程仓库抓取文件,但它不会自动merge
git merge origin/master 将master分支合并到工作区

git pull origin master 将master分支拉取并合并到工作区 --allow-unrelated-histories 允许不相关历史,本地有远程没有的文件也允许合并,否则会报错
git push origin master 将master分支推送到远程仓库
git commit -a -m “备注信息” 文件名 将修改添加到暂存区并提交到版本库(合并了添加和提交两个动作) 但是一个新文件不能用这个. 还是要单独执行 git add 后再提交

git branch 查看本地分支
git branch -r 查看远程分支
git branch -a 查看所有分支

git branch 分支名称 创建分支
git checkout 分支名称 切换分支
git merger dev 先切换到master分支,然后执行此命令,代表将Dev分支合并到master分支

git branch -d dev 删除本地分支 如果本地代码未推送远程分支,删除时会提示 -D 会强制删除
git push origin -d dev 删除远程分支

创建分支的时候是以当前所在分支为基础创建的. 所以要基于master分支创建新的分支就需要先切换到master分支,再创建新的分支

git tag 查看所有标签
git tag v0.1 创建标签
git show v0.1 查看标签的详细信息
git push origin v0.1 将标签推送至远程仓库

git checkout -b test v1.0 根据标签检出新的分支(即根据标签创建一个新的分支) 新建一个分支指向某个标签

git tag -d v0.1 删除本地标签
git push origin :refS/tags/v0.1 删除远程标签

tortoisegit下载地址 tortoisegit图形化的界面,使git的使用更容易. 但理解git命令是前提
https://tortoisegit.org/download/

idea中git的使用
如果git安装在它的默认安装目录那么idea会自动找到git的位置,如果更改了需要手动设置
file->settings->version control 下的git选项 path to git executabler 填写git可执行文件的地址 F:\Git\cmd\git.exe

ssh方式传输数据需要秘钥
git命令行里执行命令可以生成ssh秘钥 ssh-keygen -t rsa 然后按三次空格,显示图标即生成了一对 公钥私钥 公钥配置在码云上 再用ssh方式clone就可以了

 类似资料: