共计 647 个字符,预计需要花费 2 分钟才能阅读完成。
目前公司使用的是 svn, 但我比较依赖 git 的本地仓库的使用, 所以我使用了 git 的 git-svn 来兼容我的需求
我整理了一份使用文档, 并使用了几个月了(顺便跟大家分享下):
Git svn
clone 一个 svn 项目
git svn clone svn://xxx.xx/code
可选参数:
--no-metadata
使用此参数时, 拉取下来的仓库将会变成独立仓库, 之前的提交信息都在, 但之后的所有与 svn 远程仓库的相关 拉取
和提交
都不会成功
提交
提交分为两个步骤, 首先将暂存区文件提交到 git 本地仓库, 然后再上传到 svn 远程仓库
-
git 提交
git commit -m"git 提交"
-
git-svn 提交
dcommit
会将 git repo 当前 branch 与远程 svn repo 中的差异的 git commit 都提交到 svn repo,并为每个 git commit 生成一个对应的 svn revision。这和”git push”很类似。git svn dcommit
从 svn repo 拉取最新代码变更
git svn rebase
但是, 有些使用上的便利性问题想请教下, 每次我使用 IDEA 的 commit
功能提交到本地仓库后, 都需要再打开一次终端并手动执行一次git svn dcommit
, 这个步骤很容易忘记
我期望能在 IEDAcommit
动作后, 可以设置一个按钮或者脚本, 绑定到快捷键, 用来代替上述需要打开终端执行 dcommit
的操作, 不知道大家有没有解决过类似的需求
还有拉代码的操作也需要在终端输入 git svn rebase
来完成, 这个动作我也期望能不打开终端就能完成
正文完