前几天在写代码的时候电脑突然坏掉,老大交代的任务没完成,非常痛恨自己用svn或者git保存代码,相信很多程序员遇到过,硬盘坏掉,存在硬盘中的代码丢失,无法找回的问题,svn和git可谓程序员界的福音,那么问题来了,什么是svn和git呢?

  svn和git其实都是一种用来管理项目的控制版本工具,他们有很多好处,比如

    1.防止代码丢失----可以把自己的代码上传到服务器上

    2.适合多人开发----合并代码超级简单

    3.能够进行版本回退

    4.能解决冲突和bug

    5.可以做分支

    6.责任到人----可以查看写代码的日志

    7.有权限的控制

  接下来便叫大家如何使用svn以及git,

  要学习svn和git,首先需要知道几条交单的LINUX命令

  如下:

    1.ls-----查看当前目录下所有的文件以及文件
    2.cd-----切换目录
    用法:cd 路径名
    注意事项:只能切换到下一级目录,如果想切换到别的目录,必须跟完整的路径名
    3.cd .. 回到上一级目录
    cd .回到根目录
    4.clear 清除画面
    5.创建一个文件
    touch 文件名
    6.创建一个文件夹
    mkdir 文件夹名
    7.rm -r 路径 //删除一个文件
    rmdir 文件名

  接下来便可以使用命令操作svn和git

   svn:(模拟:有一个项目经理,两个开发人员,------开发人员的工作大致一样,所以写了两个)

    首先需要知道svn服务器地址,svn服务器有公司的运维或后台负责人配置项目经理需要问这些人员要地址,并且把初始的项目导出   

1.项目经理初始化项目,并且把项目传递到服务器
>svn checkout 项目地址
输入t或者p t
输入电脑密码

输入账号密码

>提交框架到svn服务器
svn commit--- 如果有新创建的文件或者文件夹 需要使用svn add 命令;
svn add ----告诉svn服务器 我这里有新创建的文件
svn st 用来查看当前svn的状态

?代表服务器不知道你要干什么,
"svn st 查看了状态 --- 有?
svn add . 把snow下的所有全部添加svn中
svn commit -m "注释"

2.开发人员1

svn checkout + (项目经理给的地址) -------从服务器上导出文件

新建了一个文件(这个文件是新建的工程,不能放在别的工程里)
svn st 查看了当前状态
发现文件 .html 有问号
svn add 文件.html(不可以再次使用svn add .)
svn commit -m"注释"

3.开发人员2:
> 更新自己的项目让自己的项目跟服务器最新的版本保持一致
svn update 更新

5.如果没有创建新文件
不需要使用svn add
直接使用svn commit -m "注释"

6.svn log 可以查看日志

二----"svn 版本回退"

第一种情况:开发人员为提交的情况
svn revert 文件名 会退到上次更新的版本

第二种情况:开发人员已经提交的情况
可以使用svn update -r 版本号

三----"svn 冲突问题"

出现的原因:多人修改同一个文件
1.首先选择p
2.解决冲突---三种解决方式:保留其中一方的代码 或者都保留
3.为了避免冲突,醒目经理应该告诉组员 那些文件不可改动 ,
一个人在修该文件的时候,在他提交以前,其他人不要进行修
改,等他提交完毕之后,其他人更新了再更改
svn resolved (修改好的文件名)
svn commit

git (流程大概和svn一样,只不过git需要先缓存到本地,在推送到服务器上,另外命令也会有一点小差别,如下)

GIT"
1.项目经理在服务器初始化项目
2.从服务器导出项目
git clone 地址
git命令 操作的时候,当前目录下必须存在.git隐藏文件
git add * 添加文件到本地缓存区
git commit -m "注释" 把文件提交到本地仓库
git push 把文件推送到本地仓库
(空文件夹上传不上去)

项目开发当中 ,提交更改之前应该先更新
git pull

冲突问题: 跟svn一样

删除文件: git rm 一个文件名

以上即为命令行操作svn和git,当然windows和mac也有不同的软件,但只要学会了命令行操作svn和git,软件自然就不在话下啦!

命令行操作svn和git和git的更多相关文章

  1. 【Git】命令行操作

    Git 命令行操作 1 本地库初始化 git init:初始化本地仓库 效果 注意:.git目录中存放的是本地库相关的子目录和文件,不要删除,也不要胡乱修改. 2 设置签名 形式: 用户名:tom E ...

  2. windows下使用TortoiseGit代替Git命令行操作

    windows下使用TortoiseGit代替Git命令行操作 大家在使用svn的时候,都非常喜欢使用小乌龟,也就是TortoiseSVN:那么git也有小乌龟版本,即TortoiseGit. 1.安 ...

  3. git 常用命令行操作

    git常用命令行操作: 点击 git bash 进入到命令行: git clone https://github.com/wlz1244/qingoo.git   //下载一个master分支代码 g ...

  4. Mac 下 Git 的基础命令行操作

    Mac 下 Git 的基础命令行操作 sudo apt-get install git-core //安装Git 用户配置 git config --global user.name "Yo ...

  5. git 工作流中的 Sourcetree 和命令行操作对比

    git 工作流操作 1.初始化本地仓库文件夹 终端进入项目文件夹 git init 隐藏文件夹中有 .git 文件夹则初始化成功 2.git 查看仓库状态 这里以新建一个 demo.txt 为例 ① ...

  6. git 命令行操作(之前整理在有道的笔记)

    1. 常用命令 切换分支 git checkout [branch_name] 检出分支 git clone [git_URL] 更新分支 git pull origin [branch_name] ...

  7. 3.Git 命令行操作

    1.Git 命令行操作(本地库操作): 1.1. 创建本地库(本地库初始化): 第一步:首先在D盘建了个名为git空文件夹,命令行中cd到这个文件夹: 第二步:通过git init命令把这个目录变成G ...

  8. SVN的命令行操作

    最近在进行svn二次开发,使用的是svnkit.看了很多svnkit的api,渐渐发现都是和SVN的命令行操作对应的.顺便研究一下svn的命名行操作. 1.将文件checkout到本地目录: 基本命令 ...

  9. Android-Git命令行操作

    Git命令行操作,在Mac上使用的话,Mac会自带了Git,直接在终端或者iTerm都可以执行Git命令操作:    Git命令行操作,在Windows系统电脑上使用的话,需要安装Git,安装好Git ...

随机推荐

  1. git 发布命令

    git add . git commit -m "备注" git push -u origin master

  2. LeetCode 205 Isomorphic Strings

    Problem: Given two strings s and t, determine if they are isomorphic. Two strings are isomorphic if ...

  3. sql 如何将拼的sql语句结果赋值给变量

    SET @SQLS='select @AllUser=count(1) from (select PhoneId from '+@TABLE+' where SiteId='+convert(VARC ...

  4. Android语录

    1. application对象的生命周期是整个程序中最长的,它的生命周期就等于这个程序的生命周期.因为它是全局的单例的,所以在不同的Activity,Service中获得的对象都是同一个对象.因此在 ...

  5. tp框架之session

    系统提供了Session管理和操作的完善支持,全部操作可以通过一个内置的session函数完成,该函数可以完成Session的设置.获取.删除和管理操作. session初始化设置 如果session ...

  6. Duilib源码分析(四)绘制管理器—CPaintManagerUI—(前期准备二)

    接下来,我们继续分析UIlib.h文件中余下的文件,当然部分文件可能顺序错开分析,这样便于从简单到复杂的整个过程的里面,而避免一开始就出现各种不理解的地方. 1. UIManager.h:UI管理器, ...

  7. Win10 UI入门RelativePanel(2)

    自适应 1) Gif: 添加动画 2)

  8. 返水bug-百威

    NOOK(Y) CSBFB(1000000) off(Y) QQ(44460898) G(1) off1(Y) QQ1(451933084) G1(1) off2(Y) QQ2(462814677) ...

  9. mac homebrew的用法

    与 MacPorts 类似,OS X 下还有款包管理工具为 Homebrew,安装方法也很简单. ruby -e "$(curl -fsSL https://raw.github.com/H ...

  10. 关于在header里增加参数的方式

    在使用一个API的时候,文档里写的返回值类型是json,可是试了下返回的明明是xml,还小小的鄙视了一把. 可是解析xml,好麻烦的.最好是json可以直接decode . 意外看到文档下面有一句 J ...