svn、git

Subversion建立仓库

建立svn仓库
    命令svnadmin create 仓库名称
仓库目录说明
    db目录:就是所有版本控制的数据存放文件。
    hooks目录:脚本文件的目录。
    locks目录:用放置hook来放置Subversion文件库锁定数据的目录,用来追踪
    存取文件库的客户端。
    format文件是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本
    号。
    conf目录:是这个仓库的配置文件(仓库的用户访问帐号、权限等)。

    .svn 这个隐藏目录记录着两项关键的信息: 工作文件的基准版本和一个本地副
    本最后更新的时间戳。千万不要手工修改或删除这个 .svn 隐藏目录和里面的文
    件!!! 否则将会导致你本地的工作拷贝 (静态视图)被破坏,无法再进行操
    作。

SVN与Eclipse整合

1.下载SVN插件(http://subclipse.tigris.org)
2.我们使用版本eclipse_svn_site-1.6.5.zip
3.解压到一个文件夹中
4.进入 eclipse 安装目录中 dropins 目录并创建一个 subclipse.link 的文
本文件(文件名任意)。内容为:path=eclipse_svn_site-1.6.5.zip解压路径
(注意:路径中需要把‘\’替换成‘/’)

Subversion目录规范

创建三个顶级目录
1. /trunk 存放开发的“主线”
2. /branches 存放支线副本
3. /tags 存放标签副本

主线(trunk):一个项目建立时就存在,并伴随着项目的成长而不断的成长,直到项目
完全结束。

分支(branch):一般是指功能分支,例如:我们的某个项目要添加一个模块,但这个
模块又比较复杂,实现难度比较大。为了不影响主线的稳定,我们就可以创建一个功能
分支来专门开发这个模块,当这个模块开发完成以后,并通过测试部门的各项测试,再
合并到主线中去

标签(tag):标签和分支一样,也是一个目录,不过这个目录中一般存放的是发布的信
息(当然我们也可以只用分支,但是用标签更清楚明了一些)。
要注意,标签目录里面的代码,要进行严格的控制,除了修正 BUG 外,不能做任何其
他的事情。

实践:

1.在svn 服务器创建一个资源
2.eclipse 使用 svn 添加 资源
3.从trunk 中检出 项目 到空作工间
4.在这个项目中写点基础代码,并提交
5.发布版本1.0 项目,右键选择 分支与标记 ,选择 tags ,起个名子 /v1.0
现在开发 v2.0
//v1.0有 bug,需要修改,这时
6.eclipse中右键,选择 切换 ,选择 tags/v1.0
7.这时已 切换到 tags
8.右键项目,选择 分支/标记  选择 branches ,起个名子 /v1.0_xiufu
9.切换到 branches ,进行bug 修改
10.发布 v1.1版本, 选择 分支/标记 到 tags/v1.1
11.将项目 v2.0之前的 v1.0bug 更新,保证现在的 v2.0没有之前的 bug
12.切换到 v2.0 开发项目中
13.右键项目  选择合并 ,选择  branches/v1.0_xiufu  
14.项目更新

Git 简介

//好处:
分布式,强调个体
公共服务器压力和数据量都不会太大
速度快、灵活
任意两个开发者之间可以很容易的解决冲突
离线工作
每日工作备份
可以吃后悔药

这里写图片描述

这里写图片描述

Git建立仓库

建立Git仓库
    git init --bare 库名称
仓库目录说明
    hooks目录:脚本文件的目录。
    info目录:保存了不希望在 .gitignore 文件中管理的忽略模式的全局可执行
    文件
    logs目录:日志目录
    objects目录:存储所有数据内容
    refs目录:存储指向数据(分支)的提交对象的指针
    config文件包含了项目特有的配置选项
    description文件仅供 GitWeb 程序使用
    HEAD文件指向当前分支

Git与Eclipse整合

下载EGit插件(http://www.eclipse.org/egit/)
下载到的插件为压缩包,可以直接在Eclipse中安装:
Eclipse -> Help -> Install new Software
常用命令
1. 创建git资源库
    git init --bare 库名称

2. 在用户文件夹下把资源clone下来
    git clone <仓库目录> /g/software/repository/git/itheima <用户目录> .
    注意:clone时候用户目录必须为空

3. 创建一个文件,纳入到版本控制中。
    git add <文件名>
    第一次执行会出警告:warning: LF will be replaced by CRLF in readme.txt.
                        The file will have its original line endings in your working directory.
    警告处理:需要配置用户信息
                    git config user.name = "zhangsan"
                    git config user.email = "itheima@gmail.com"

4. 提交到本地版本库里。
    git commit <文件名>

5. 推送到远程共享版本库中
    git push origin master

6. 切换用户,拉取最新的文件
    git pull
git pull 之后有冲突:

$ git pull
remote: Counting objects: 5, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
From g:/software/repository/git/itheima26
   50db030..a04027a  master     -> origin/master
Auto-merging readme.txt
CONFLICT (content): Merge conflict in readme.txt
Automatic merge failed; fix conflicts and then commit the result.


解决方法:
1.git mergetool
    调用上面命令之后会提示你输入编辑方法,输入:beyond compare 进入编辑器.

2.编辑完之后.调用git commit -a 把当前目录中所有都提交到本地库中.

3.git push origin master 提交到远程库中.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值