版本管理工具:git svn 的比较

git:分布式。开发者可以提交到本地,每个开发者机器上都是一个完整的数据库。两个开发者之间,可以通过打patch的方式交换文件。

svn:集中式。所谓 git 服务器,是指大家约定使用同一个网址提交、更新代码。这个网址可以是任何一个开发机。

git 建立 branch 的速度更快,因为只保存增量。svn 的 branch 是一份完整的代码拷贝。

git 工作区、暂存区的概念

保存文件后,进入工作区

git add 后,进入暂存区

git commit 后->产生提交记录,这时只要文件系统是好的,并且不执行 git reset --hard,那么你的所有修改都已经被安全的记录下来了

git push 后 ->代码进入仓库,这时别人可以获取到你的代码了

刚接触git时,容易混淆的几个命令

git reset --path:是git add 的反向操作。

git revert :不能指定单个文件,只能指定一个commid id,撤销这次commit的所有修改。撤销行为本身也会成为一个commit。

git checkout --path:不指定commit id时,是用暂存区的文件覆盖工作区的文件,否则用commit id中的文件版本,覆盖暂存区中和工作区中对应的文件。

常用的 svn 命令跟 git 命令作比较

svn git 备注
更新
git fetch --all

git pull origin/xxx_branch

 git fetch — all 用来获取 git 仓库的 branch 更新信息; 如果指定了 track branch,git pull 可以不跟参数。
提交
git add xxx

git commit -m “message"

git push origin local:remote

Update to Version git checkout commit_id -- file git 里的 commit id相当于 svn 的 version
显示资源历史记录 git log / gitk 下面有 gitk 在 mac 系统的安装方法
还原
丢弃本次修改到最近一次 commit 的状态:

git checkout -- file


SVN 的还原是指,丢弃本次修改,将文件或目录还原到与服务器一致的状态。

git 没有中央服务器的概念,因此“还原”可以理解为,将指定文件或目录,更新为最近一次提交的版本。

其他常用的 git 命令

git pull --rebase 本地有一些 commit 的前提下,希望 merge 远程代码,同时保留之前的 commit 信息。

git cherry-pick 通过 git log 命令,找到某一个 commit id,希望只 merge 此次 commit 的内容。

repo

有一个 manifest.xml 文件,记录若干git仓库,例如 AOSP 的管理。

gitk on Mac

1、命令行安装 HomeBrew

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)""

2、安装最新版 git

http://www.moncefbelyamani.com/how-to-install-xcode-homebrew-git-rvm-ruby-on-mac/

Step 3: Install Git

介绍git hook的好文章

https://www.atlassian.com/git/tutorials/git-hooks/

时间: 2024-08-12 01:42:31

版本管理工具:git svn 的比较的相关文章

版本管理工具git与svn简介

版本管理工具 版本管理工具简介 常见版本管理工具 cvs(Concurrent Versions System) vss(Visual SourceSafe) svn 常用的版本管理工具 git 流行的版本管理工具(分支管理强于svn) bitkeeper hg cc(ClearCase) SVN 常用指令 checkout 下载代码 update 从服务器更新本地代码代码 add 向服务器添加文件 commit 提交本地的更改到服务器 showlog 查看版本日志 GIT git init 新

Studio之版本管理工具Git (图文教程)

目前业界主流的版本管理工具主要是 svn/git.svn是1种集中式的代码管理工具,而git是1种散布式的代码管理工具,广受极客的爱好.而基于git的github更是全宇宙码农的提高逼格,深究技术的必备神器.下面介绍,如何将Android Studio中的工程托管到github中. 1.使用git 1.首先在github上创建1个工程:  2.配置git环境 若Android Studio中的git环境配置有问题 需要在setting配置 可以点击右侧的Test按钮测试是不是配置成功  若没有下

谈谈分布式版本管理工具Git

一.主流的版本管理工具 目前在企业中比较主流的版本管理工具有:GIT.SVN.CVS等等. 二.什么是Git? Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目.是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件. 三.Git与SVN的的主要区别? Git是分布式版本控制系统,那么它不但和SVN一样有中央服务器,而且每个人的电脑也是一个完整的版本库,这样,工作的时候联网就不是必须的了,因为版本可以先在自己的电脑上

码农的好助手:版本管理工具git的使用

一.什么是github? GitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub. GitHub 于 2008 年 4 月 10 日正式上线,除了 Git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅.讨论组.文本渲染.在线文件编辑器.协作图谱(报表).代码片段分享(Gist)等功能.目前,其注册用户已经超过350万,托管版本数量也是非常之多,其中不乏知名开源项目 Ruby on Rails.jQuery.pytho

版本管理工具Git使用总结

什么是Git? Git是一种分布式代码版本管理系统,使用Git,可以很方便地进行代码版本的管理 在编写代码的过程中,可以很方便地把代码进行上传或者下载,代码更新后,再上传到git 使用git,可以很方便地查看代码的修改历史 可以在 linux ,Windows ,mac 上使用 git 关于 Git 的教程,可以参考以下文章 http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 win

版本管理工具Git三种工作流

Git是分布式版本管理控制的工具.学习Git一般都是先去学习Git的命令. 但是学习完Git的基本命令之后还是不知道怎样使用Git.首先,我们要清楚的 一点是Git的使用方法其实有很多种,也就是说Git有不同的工作流.本文介绍 一下Git常用的三种工作流. 1. 集中式工作流 集中式工作流主要是用于团队人数较少的情况,集中式工作流只在一 个分支上进行开发.每次修改都在同一个分支上提交.像写文档这种工作方式 就可以使用集中式工作流. 2. Gitflow工作流 在软件开发设计中,我们要考虑功能开发

版本管理工具Git(三)Gitlab高可用

高可用模式 企业版 社区版 我们这里说一下成本比较低的主备模式,它主要依赖的是DRBD方式进行数据同步,需要2台ALL IN ONE的GitLab服务器,也就是通过上面安装方式把所有组件都安装在一起的2台机器. 什么是DRBD 它是分布式复制块设备,软件实现的无需共享可以在服务器之间镜像块设备的存储复制解决方案. 左侧为A节点,右侧为B节点 DRBD运行在内核里,它是一个内核模块.Linux2.6.33开始已经整合进内核.上图A为活动节点,B为被动节点.A收到数据发往内核的数据通路,DRBD在数

Git——版本管理工具(一)

Git 是一个分布式版本控制工具,它的作者 Linus Torvalds 是这样给我们介绍 Git  —— The stupid content tracker(傻瓜式的内容跟踪器) 1. Git 背景 Git 最初由Linus Torvalds编写,用于 Linux 内核开发的版本控制工具. Git 与常用的版本控制工具 CVS.Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便. Git 的速度很快,这对于诸如 Linux kerne

谈一谈git和SVN两大版本管理工具。

Git 和 SVN 的区别? 写在前面: git和SVN都是一个版本管理工具,没有孰优孰劣之分,在这里,只是简单的说一说git和svn的优缺点.选用哪一个看自己公司的实际情况而定. 1) 核心的区别在于git是分布式的,SVN不是.但git不是唯一的分布式的版本管理工具,还有像Mercurial等分布式版本管理工具,也有像SVN一样的集中式版本管理工具,例如VSS,CVS等.Git跟SVN一样有自己的集中式版本库和Server端,但Git更倾向于分布式开发,因为每一个开发人员的电脑上都有一个Lo

微信公众号开发【技术基础】(四):SVN代码版本管理工具的使用

SVN是一种代码版本管理工具,具有可视化的操作界面,使用简便,和git的功能类似.下面总结一下SVN的基本用法: 1.安装SVN软件,和安装一般的软件的步骤差不多,这里使用的版本是TortoiseSVN_1.9.5.27581_x64 百度网盘下载地址:https://pan.baidu.com/s/1boFNHk7 2.安装完成之后,电脑右键菜单中就会出现SVN的菜单选项: 注:如果没有出现SVN的右键菜单,那么再重新执行一下安装包,并选择"修复模式"安装即可. 3.拉远程代码库中的