前几天在写代码的时候电脑突然坏掉,老大交代的任务没完成,非常痛恨自己用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. 序列化,反序列化和transient关键字

    一.序列化和反序列化的概念 序列化:指把java对象转换为字节序列的过程. 反序列化:指把字节序列恢复为java对象的过程. 对象的序列化主要有两种用途: 1) 把对象的字节序列保存到硬盘上,通常存放 ...

  2. 值得推荐的C/C++框架和库

    值得推荐的C/C++框架和库 [本文系外部转贴,原文地址:http://coolshell.info/c/c++/2014/12/13/c-open-project.htm]留作存档 下次造轮子前先看 ...

  3. CSS网页制作常用标签

    做了一个简单的网页,从布局到加内容,遇到了很多小问题.很多标签和属性都不会用或者忘记了.所以以此记录一下. 一.如何将边框四角变圆?(或做一个圆形) 顾名思义,如果要更改边框的角需要用到边框(bord ...

  4. git pull push 不用输入用户名和密码的方法

    1.在计算机的安装盘下找到 '用户' 这个文件夹打开. 2.找到'用户' 文件夹下面你当前的用户. 3.新建'.gitconfig' 文件 4. [user] email =  name = [pus ...

  5. git与github使用

    Git和Github简单教程 目录: 零.Git是什么 一.Git的主要功能:版本控制 二.概览 三.Git for Windows软件安装 四.本地Git的使用 五.Github与Git的关联 六. ...

  6. 一、常见PHP网站安全漏洞

    对于PHP的漏洞,目前常见的漏洞有五种.分别是Session文件漏洞.SQL注入漏洞.脚本命令执行漏洞.全局变量漏洞和文件漏洞.这里分别对这些漏洞进行简要的介绍. 1.session文件漏洞 Sess ...

  7. 将plist文件读取成为数组

    NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"city" ofType:@"plist&q ...

  8. AndroidStudio导入项目出现Your project path contains non-ASCII characters错误

    Your project path contains non-ASCII characters. This will most likely cause the build to fail on Wi ...

  9. 【leetcode】Intersection of Two Linked Lists

    题目简述: Write a program to find the node at which the intersection of two singly linked lists begins. ...

  10. collection of vim vim tutorial for beginner

    在linux命令行下编辑文档 http://blog.csdn.net/niushuai666/article/details/7275406 http://linuxconfig.org/vim-t ...