zoukankan      html  css  js  c++  java
  • 用SVN来同步不同电脑上的代码

    1.需求

    将不同电脑上的完成的代码提交到SVN服务器,达到代码同步的功能。这样实验室与宿舍里面就可以用同一份代码了,不必担心U盘拷贝的副作用了。

    2.在google code上建立一个项目

    请参考《Google Code 服务试用》一文,解决了在Windows下安装与提交问题

    3.在Debian下安装SVN

    sudo apt-get install subversion subversion-tools
    由于只是使用SVN客户端,可以不安装apache

    4.SVN的使用简介

    svn checkout https://project-name.googlecode.com/svn/trunk/ local-dir-name –username yourname

    其中project-name是你的项目名称
    local-dir-name是本地的目录,若不存在则创建,如不指定则默认为trunk
    yourname是您的google账户名称

    注释:checkout以可以简写成co

    添加文件或文件夹到SVN中

    svn add files|directory

    提交

    svn commit –message “log info” local-dir-name

    提交时必需用参数 –message提供log信息,信息可以为空
    如果当前本地目录为代码所在目录,则不需要指定local-dir-name

    比如执行:

    svn commit -m "Initial state of libtree" ./
    Authentication realm:
    <https://xxxx.googlecode.com:443> Google Code Subversion Repository
    Password for 'cherish':

    svn: Commit failed (details follow):
    svn: Server sent unexpected
    return value (500 Internal Server Error)
    in
    response to MKACTIVITY request for '/svn/!svn/act/33e89cb0-df75-4605-8866-d0d8ca8b74f1'

    此时的username取默认值为你linux的登录名,所以需要修改为你google的账户名。参考commit文档有如下提示

    View Code
    commit (ci): 把工作副本的修改提交到版本库。
    用法: commit [路径...]

    必须提供日志消息,但它可以是空的。如果没有指定 --message 或 --file
    选项,编辑器会被启动。如果有目标是锁定的或者包含锁定条目,则在成功
    提交后会被解锁。

    有效选项:
    -q [--quiet] : 不打印信息,或只打印概要信息
    -N [--non-recursive] : 过时;尝试 --depth=files 或 --depth=immediates
    --depth ARG : 受深度参数 ARG(“empty”,“files”,“immediates”,或“infinity”) 约束的操作
    --targets ARG : 传递文件 ARG 内容为附件参数
    --no-unlock : 不要解锁目标
    -m [--message] ARG : 指定日志信息ARG
    -F [--file] ARG : 从文件ARG读取日志信息
    --force-log : 强制校验日志信息资源
    --editor-cmd ARG : 使用 ARG 作为外部编辑器
    --encoding ARG : 将ARG的值视为字符编码
    --with-revprop ARG : 在新版本设置版本属性 ARG
    使用格式 name[=value]
    --changelist ARG : 只能对修改列表 ARG 成员操作
    [aliases: --cl]
    --keep-changelists : 不要在提交后删除修改列表

    全局选项:
    --username ARG : 指定用户名称 ARG
    --password ARG : 指定密码 ARG
    --no-auth-cache : 不要缓存用户认证令牌
    --non-interactive : 不要交互提示
    --trust-server-cert : 不提示的接受未知的 SSL 服务器证书(只用于选项 “--non-interactive”)
    --config-dir ARG : 从目录 ARG 读取用户配置文件
    --config-option ARG : 以下属格式设置用户配置选项:
    FILE:SECTION:OPTION=[VALUE]
    例如:
    servers:global:http-library=serf

    所以,执行命令

    svn commit -m "Add STL3.0" --username xxxx --password xxxxxxxxx

    即可提交成功。

    附录

    相关资源和链接

    SVN版本控制简介

    Google Project Hosting
    使用Subversion进行版本控制(手册)

    svn在linux下的使用(svn命令行)ubuntu 删除 新增 添加 提交 状态查询 恢复

  • 相关阅读:
    LeetCode OJ 107. Binary Tree Level Order Traversal II
    LeetCode OJ 116. Populating Next Right Pointers in Each Node
    LeetCode OJ 108. Convert Sorted Array to Binary Search Tree
    LeetCode OJ 105. Construct Binary Tree from Preorder and Inorder Traversal
    LeetCode OJ 98. Validate Binary Search Tree
    老程序员解Bug的通用套路
    转载 四年努力,梦归阿里,和大家聊聊成长感悟
    转载面试感悟----一名3年工作经验的程序员应该具备的技能
    Web Service和Servlet的区别
    关于spring xml文件中的xmlns,xsi:schemaLocation
  • 原文地址:https://www.cnblogs.com/westfly/p/2013564.html
Copyright © 2011-2022 走看看