从svn切换到git上的使用总结

原创 2017年01月08日 22:05:58

当工作中第一次要从svn切换到git的时候其实内心还是蛮开心的,毕竟总算是跟上时代的步伐了,但是从svn切到git上是痛苦的,下面我将自己在工作中用到的svn与git做个对比,帮助大家也能顺利地从svn上转换到git上。从svn到git,最容易忘记的就是git的commit操作只是将暂存区的内容提交到本地仓库,而不是远程仓库,commit的时候同时是看不到,个人感觉这一点是初次上手git最容易出错的地方

下面的图片很清晰的说明来一些命令和各个区域的关系
 命令影响的工作空间(以上图片来自网络)
1.从远程仓库拉取代码到本地:git clone -b brance 远程仓库的地址
2.代码有了,那肯定要在工作区内大显身手了,撸完代码也得和同事分享,那么接下来要做的就是

  • git add . 将写的文件提交到暂存区
  • git commit -m “提交备注” 将暂存区的文件提交到本地仓库,
    切记这只是本地仓库,还未分享出去*
  • git push 提交到远程仓库,这时你的同事就可以看见了

但是在多人协作的情况下事情没有这么简单的,这几个简单的命令也是无法满足需求的,需要在不同的分支上进行切换,那么你就需要掌握一些关于分支的命令

  • git branch 查看你当前所在的分支
  • git branch name 创建分支
  • git checkout -b branchName 当前所在分支创建新分支
  • git checkout branchName 切换分支
  • git merge branchName 合并branchName分支到当前分支
  • git git cherry-pick (-n) commitId(SHA) 挑拣(多个)一个提交到当前分支

比如你刚刚开发了一些需求,上司突然又给你安排了一件非常紧急的任务,要你马上做,这时你工作目录下的文件又不想提交那么这时就需要使用

  • git stash list 查看保存的工作进度
  • git stash 保存工作进度
  • git stash pop 来恢复保存的工作状态

有时提交的时候需要比较本地和版本库之间的差异这时就需要使用git diff 命令来了这里写图片描述 此图来源于蒋鑫的《git权威指南》一书

  • git diff 工作空间和暂存区的区别
  • git diff HEAD 工作空间和版本库的区别
  • git diff –cached 暂存区和版本库的区别

使用git提交代码的时候,我们难免不会犯错,毕竟我们是普通的凡人,这时我们可以使用git reset来挽回我们的错误

  • git reset –soft 只更改版本库的指针,不改变暂存区和工作区
  • git reset –mixed 只更改引用的指向和暂存区,不影响工作区(默认为mixed)
  • git reset –hard 影响引用的指针,暂存区,工作区

偶尔我们也需要删除文件这时我们可以使用

  • git rm fileName 从工作目录和暂存区中删除
  • git rm –cache fileName 从暂存区中删除,工作目录中保留
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

SVN——SVN项目迁移到GIT

svn有很多优点,但是git的出现对svn的冲击的确很大,现在很多公司项目的都迁移的git上了,下面是我自己在做svn迁移项目到git上面时候整理的一些资料。暂时就些整理这些,具体的操作如果有看不懂的...

从 SVN 迁移到 Git

转:http://beginor.github.io/2013/03/12/migrate-from-svn-to-git.html 准备工作 确认所有用户的本地修改都签入到服务器, ...

svn2git使用小记

Github强烈推荐使用svn2git工具将svn repository转成git repository: https://help.github.com/articles/importing-fro...

idea下git和svn切换问题

使用idea工具进行开发,有时需要使用github  有时又需要svn那如何进行切换它们呢(Idea选择了git就没有了svn,相反也是),解决方法很简单:  修改项目下.idea目录的vcs....

GIT版本控制 — GIT与SVN的相互转换 (三)

git-svn   git-svn用于Git和SVN的转换,可以把Git仓库迁移成SVN仓库,反之亦可。 详细介绍可见[1],或者命令行输入git-svn。   Bidirectional ...
  • zhangskd
  • zhangskd
  • 2015年02月14日 15:48
  • 20734

最近在ubunto下搞android遇到的一些坑,持续更新

一 换了新系统第一个问题当然是翻墙了 二 发现配置好了还是不能翻墙需要强制Googlecomcom域名使用https 三 SVN更换用户和密码 四 ubunto下卸载重装svn 五 U...

常用数据结构的时间复杂度

常用数据结构的时间复杂度 Data Structure Add Find Delete GetByIndex Array (T[]) ...

git ,Maven,SVN工具使用总结;

克隆命令:$ mkdir jerry_repo                      $ cd jerry_repo                  $ git clone gituser@...
  • dodan
  • dodan
  • 2015年09月30日 09:39
  • 988

#版本管理工具使用总结(git,svn,hg)

git一、git常用命令1提交代码 git add . //把修改的或增加的文件添加到本地库里 git commit -am “说明性文字” git pull ...

git-svn使用用法

  • 2013年05月28日 12:55
  • 450KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:从svn切换到git上的使用总结
举报原因:
原因补充:

(最多只允许输入30个字)