`
wenzongliang
  • 浏览: 461000 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

git svn 代码管理应该注意的事项

 
阅读更多

从服务器下载

1.没有代码时clone

2.已有了代码pull(=fetch+meger)或pull --rebase(=fetch+rebase)

 

--------------------------------------------------------------------------------------------

git

上传到服务器步骤(主干上工作):

1.(add, commit).新增的文件一定要add,git add .,commit提交到本地,(git commit --amend 合并提交)

 

2.(fetch ,rebase(rebase前一定要备份)) /(pull --rebase),(有冲突时解决后:add,rebase --continue);(不能解决:rebase --abort)

  或(fetch ,merge) / (pull),(有冲突时解决后:(add,commit));(不能解决:merge --abort)

 

3.push到服务器

------------------------

svn

 

2.然后update更新(更新之前一定要备份),有冲突时会把所用冲突标出来,冲突解决也可与其他人配合解决,解决后标记resorver冲突已解决,解决不了参照更新前的备份解决。

 

3.新增的文件一定要add,commit到服务器

 

 

--------------------------------------------------------------------------------------- 

上传到服务器步骤(分支上工作):

1.新增的文件一定要add,点右键add没有add会列出

2.commit提交到本地。(commit之后可以要export出一份,比较有没有漏加的文件。)

3.切换的主干分支。

4.然后pull更新,有冲突解决冲突,冲突解决与其他人配合,实在解决不了revert是恢复到上次提交。

(pull=fetch+meger,fetch只是把远端代码下载到本地,和自己本地代码没有任何冲突,不用担心fetch。meger才是影响本地代码的。)

5.把分支合并到主干,然后commit。

6.push到服务器上的主干。

 

建立分支工作的好处

分支流程:

每次开发前建立一个工作分支,不在主干上工作。

也可以一个开发模块一个分支,分别工作,最后分别合并到主干。

每次提测后建立一个提测分支,然后还在原来的分支上工作,这样的话出现提测的包出现bug后,就可以切换到提测分支去改bug,

bug改完之后把提测分支合并到工作分支。

 

建立分支

建立分支可以选择base on任意以前的版本。

 

切换分支

1.切换前commit代码或者stash暂存代码,不然会切换失败

(暂存后上次commit后的代码都消失了,下次切换回来的时候stash pop更改又恢复了)

2.-f强制切换会丢弃更改或把更改带到要切换的分支上去或其他意想不到的情况。

 

分支合并主干

分支合并到主干:切换到主干,点右键merger后from选择要合并的分支

meger(比较)前一定commit代码不然合并不了或者意想不到的结果,又可以防止meger出错不能完成合并,只能revert。

meger前最好本地备份代码。防止meger出错并且commit漏加文件。

meger具有智能性,比传统的代码对比工具好在能自动合并无异议的代码,有异议的指出来手工解决。

 

分支删除

删除分支在查看log中点分支可以分支删除。

 

 

回滚到以前版本

恢复到以前版本用reset。tortoiseGig在显示log中点右键。恢复后代码并没有恢复到上一版,revert之后才真正回到上一版代码。

 

log可以查看本地或remote的不同分支的log,

所有log都是本地缓存的不是线上最新的,如果想看线上最新的,只有pull或fetch之后看到最新的log。

 

merge与rebase都是代码合并,只是产生的版本线不同。

有冲突时

冲突解决后需要重新add commit(git rebase --continu),实在解决不了git merge --abort(git rebase --abort)恢复到合并前。

-------------------------------------------------------------------------------------------------------

常用命令:

git status 显示所有文件的变化

 

git branch

 

git checkout [分支名]

 

git log [分支名]

 

git add 把新增的文件添加到索引修(修改的文件有时也需要add)

--all 把所有的都添加进去

.把所有的都添加进去

 

git commit -m "log" 提交的本地不要加中文

--amend 合并到最后一条commit消息。(git commit -amend )(git commit -amend -m "")

 

git 可以用pull --rebase (=fetch+rebase),也可以pull (=fetch+merge)。

 

git push origin HEAD:refs/for/master 把你的分支push到远端master分支

分享到:
评论

相关推荐

    git和svn学习入门教程

    Git和Subversion(SVN)都是版本控制系统,用于跟踪和管理软件开发中的代码变更。它们在代码管理和协作方面发挥着至关重要的作用。本教程将帮助初学者了解这两者的基础知识,以便选择适合自己的工具。 首先,让我们...

    git 、svn 代码版本管理工具所有合集.7z

    总结来说,"git、svn 代码版本管理工具所有合集.7z" 包含了当前最主流的版本控制工具,无论是 Git 还是 SVN,都有相应的图形化客户端支持。Sourcetree 适用于 Git 用户,而 TortoiseSVN 和 TortoiseGit 则为 SVN 和 ...

    git-svn使用用法

    在安装方面,Mac用户可以通过安装Xcode获得git-svn支持,而Linux用户可以使用包管理工具如apt-get进行安装。对于Windows用户,推荐使用msysgit工具,它提供了Git在Windows平台上的完整实现。此外,Cygwin提供了更为...

    小乌龟svn代码管理

    **小乌龟SVN(TortoiseSVN)代码管理详解** 小乌龟SVN是一款在Windows操作系统上广泛使用的Subversion(简称SVN)客户端工具,它为用户提供了一个直观易用的图形用户界面,便于管理和协作开发源代码。在软件开发...

    移除文件夹的Git或SVN信息

    在IT行业中,版本控制系统如Git和SVN是用于管理代码版本和协同开发的重要工具。然而,在某些情况下,可能需要从项目文件夹中移除这些版本控制系统的痕迹,比如当你想要分享一个不带版本控制信息的干净工程副本时。...

    svn迁移到git保留commit信息,后续还能维护从svn同步代码到git(亲测有效,网上资源整理最终版)

    公司代码要从svn迁移到git,不想笨笨的重新上传一份新代码,于是研究了下svn代码到git的迁移同时还要保留commit信息,尝试了很久终于成功啦;在保留commit信息的同时,还能继续从svn同步代码到git,这样即使还有人...

    版本管理_svn和git常用操作

    版本管理系统如svn和git,对于团队协作和项目维护至关重要。理解并熟练掌握它们的操作,能极大提高开发效率,确保代码的质量和稳定性。无论是svn的简单分支模型还是git的分布式特性,都为开发者提供了灵活的工作流程...

    git和svn的比较

    Git和SVN是两个最常用的版本控制系统,它们都是为了帮助开发者更好地管理代码、追踪变化、协作开发而设计的。那么,它们之间有什么区别呢?下面,我们将对Git和SVN进行比较,详细介绍它们各自的优缺点。 Git是什么...

    git 、svn汉化包

    Git 和 SVN(Subversion)是两种广泛使用的版本控制系统,它们在软件开发中起着至关重要的作用,帮助开发者追踪代码的变化并协同工作。汉化包是为了方便中文用户使用这些工具而提供的本地化版本,使得界面和文档能...

    git_svn.rar

    Git 和 SVN 是两种广泛使用的版本控制系统,它们在软件开发中起着至关重要的作用,帮助团队协同工作并跟踪代码的历史变化。Git 是一个分布式版本控制系统,而 SVN(Subversion)是集中式版本控制系统。以下是关于 ...

    svn类型的git工具64位

    在这种情况下,"svn类型的git工具"提供了一种解决方案,使得开发者可以在使用Git的同时,与SVN服务器进行交互,如克隆、提交和更新代码。 这个64位版本的工具可能是专为Windows 64位系统设计的,因为操作系统位数对...

    svn转化为git

    在IT行业中,版本控制系统是开发团队协作的重要工具,它们帮助管理代码版本,追踪更改历史,协同工作。在过去的许多年里,Subversion(SVN)是广泛应用的版本控制系统,但随着时间的发展,Git逐渐崭露头角,因其...

    版本管理git svn

    版本管理是软件开发中至关重要的一个环节,它允许团队成员协同工作,跟踪代码变更,并能够回滚到任何历史版本。Git 和 Subversion (SVN) 是两种广泛使用的版本控制系统,它们各自有着不同的特性和优势。 Git 是由 ...

    svn代码管理器

    通过以上介绍,您应该对SVN代码管理器有了全面的了解。无论是小型项目还是大型企业级应用,SVN都能提供强大的版本控制支持,帮助团队高效协作。掌握SVN的基本操作和理念,对于任何IT从业者来说都是非常有价值的。

    Git2Svn:代码git到svn的单向同步

    git2svn提供git到svn的单向同步,基于代码,但做了一些改进,支持更多参数,bash同步脚本使用方法: ./git2svn.sh [-r git_revision] [-t type] [-u svn_user] [-p svn_password] [-l locale] <local> 其中:type参数...

    git和svn.zip

    Git 是一个分布式版本控制系统,由 Linus Torvalds 创建,最初是为了管理 Linux 内核的源代码。而 SVN(Subversion)则是一个集中式版本控制系统,它在早期的软件开发环境中非常流行。 Git 的主要特性包括其分布式...

    git+svn三套视频教程

    项目开发中代码管理是非常重要的,当前就git和svn占据了市场公司中代码管理的95%以上份额,此套git+svn三套视频教程让你学会这三套,轻松搞定企业中代码管理工作

    如何将SVN项目迁移至Git

    在软件开发过程中,版本控制系统是不可或缺的工具,SVN(Subversion)和Git都是常见的版本管理软件。然而,随着Git的普及,很多开发者选择将原有的SVN项目迁移到Git上,以便利用Git的分布式特性、分支管理和强大的...

    svn代码行变更统计工具

    标题中的“svn代码行变更统计工具”指的是一个用于跟踪Subversion(SVN)版本控制系统中代码变更的工具。这样的工具通常用于项目管理、代码审核和性能分析,帮助开发者了解代码库的变化情况,找出代码修改频繁的部分...

    SVN和GIT视频教程2019(百度云).txt

    01_创建虚拟机、02_为什么要使用版本控制、03_单用户的SVN代码管理、04_仓库的备份和还原、05_多用户共同管理代码的冲突、06_使用版本控制问题都可以得到解决、07_文件锁、08_SVN提交代码规范、09_SVN图标、10_添加...

Global site tag (gtag.js) - Google Analytics