场景1
 
想删除一个段落,又怕将来想恢复找不回来怎么办?有办法,先把当前文件“另存为……”一个新的Word文件,再接着改,改到一定程度,再“另存为……”一个新文件,
这样一直改下去,最后你的Word文档变成了这样:
 
 
 
场景2
有些部分需要你的财务同事帮助填写,于是你把文件Copy到U盘里给她(也可能通过Email发送一份给她),然后,你继续修改Word文件。一天后,同事再把Word文件传给你,
此时,你必须想想,发给她之后到你收到她的文件期间,你作了哪些改动,得把你的改动和她的部分合并,真困难
 
 
理想状态( 版本控制 )
版本
文件名
用户
说明
日期
1
index.txt
张三
删除了'我爱你'
7/12 10:38
2
index.txt
张三
增加了"请嫁给我"
7/12 18:09
3
index.txt
李四
删除了“请嫁给我”
7/13 9:51
4
index.txt
张三
增加了:“拜拜”
7/14 15:17
 
 
 

 
SVN(了解)
 
版本控制工具:、
    集中式得版本控制工具  (不安全)
    网络共享
 
 
工作流程:
        项目负责人创建好项目服务后
        参与项目人员检出项目(拉取)
        参与项目人员编辑完之后,添加add
        将文件提交到服务器   commit
 
 

 
 
 
 
 
 
git
 
Git是目前世界上最先进的分布式版本控制系统(没有之一)。
Git有什么特点?简单来说就是:高端大气上档次!
 
git诞生
 
 
 
集中式  vs  分布式
 
 
 
 
和集中式版本控制系统相比,分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,
随便从其他人那里复制一个就可以了。而集中式版本控制系统的中央服务器要是出了问题,所有人都没法干活了。
 
 
git得工作流程:
 
        工作区、暂存区、版本库                         gitHub
        工作区 : 工作中编写得代码
        暂存区:
                    暂时存储、帮助我们保存代码
                    作为过滤层
                    避免误操作
                    保护工作区和版本区
                    分支处理
        版本库:管理版本、版本库中得代码操作产生版本
        
 
安装git  
 
001 配置个人信息
git config --global user.name <名字> --------->:配置用户名
 
git config --global user.email <邮箱>--------->:配置邮箱
 
git config --list --------->:查看配置信息
 
git config --global user.name  --------->:查看用户名
 
git config --global user.email --------> :查看邮箱
    
 
002 创建仓库
 
git init    通过git init命令把这个目录变成Git可以管理的仓库
 
 
 
003  查看文件得提交状态
git status
 
 
 
004 将文件或文件夹提交到暂存区
 
git add 文件名称
 
 
 
005 将缓存区的文件提交到版本库
 
git commit -m "添加注释"
 
 
 
006 查看提交的版本日志
git log
 
 
 
007版本回退
git reset --hard HEAD^         注:回退一步一个^  两步两个^
 
 
 
008 查看版本号
git reflog
 
 
009 通过版本号做版本回退
 
git reset --hard 版本号
 
 
 
010 查看文件最新改动的地方
 
git diff 文件名         -------------------------->  查看工作区与暂存区的比较
 
 
 
 
git diff master    ------------------------>  查看工作区与版本库的比较
 
 
 
 
 
git diff --cached  ------------------------------>查看暂存区与版本库的比较
 
 
011  删除文件
git rm -f 文件名    ----------------->删除暂存区 或 分支上的文件 同时本地工作区也不需要这个文件
 
 
 
 
git rm --cached 文件名  ------------------>   删除暂存区 或分支上的文件  但是本地工作区的文件保留
 
 
 
012  批量提交( 注:文件夹的提交必须文件夹不能为空 )
 
git add .        或者是   git  add  --all
 
 
013 忽略某个文件
 
.gitignore  文件的使用
        用命令创建.gitignore文件  在.gitignore里面添加要忽略的文件名称即可
        touch .gitignore
 
 
 
 
 
 

 
014  本地分支
 
    查看分支
 
git branch
 
 
    创建分支
 
git branch 分支的名称
 
 
    切换分支
 
git checkout 
 
    
 
    创建并切换
 
git checkout -b
 
    
    删除分支
 
git branch -d 分支名称   在主分支上删除
 
 
    分支合并
 
git merge 分支名称
 
 
 

 
 
GitHub
 
GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub。
 
001  git操作github   实现项目托管    (  从远端github拉取代码 )
 
1:需要早github上面创建一个仓库(先创建仓库的时候。github仓库尽量初始化)
 
2:在本地通过git  clone一个github仓库      命令 : git clone github仓库路径
 
3:把路径切换在.git的目录下     在本地工作区添加项目 ->  存在暂存区 ->  本地git仓库
 
4:将本地仓库推送到远端   git push -v origin master
 
5:线下同步github线上代码  git pull origin master
 
 
002  把本地git仓库 推送到远端
 
0:github里面先创建新的仓库
 
1:git remote add origin github仓库地址    连接
 
 
2:git push -v origin master      推送
 
 

 
 
远程分支
 
0 : git branch --all  查看所有分支
 
1 : git branch -r   查看远程分支
 
2:将本地分支 push 到远程分支
 
3:删除远程分支
 
 
 
 
 
 

GIT \ SVN 版本管理 git + gitHub的更多相关文章

  1. git svn 流程

    $ git svn clone http://192.168.10.208/svn/DeptDoc $ git svn rebase   $ git commit -asm "svn tra ...

  2. git详情、git工作流程、常用命令、忽略文件、分支操作、gitee远程仓库使用

    今日内容概要 git详情 git工作流程 git常用命令 过滤文件 分支操作 git远程仓库使用 可参照:https://www.cnblogs.com/liuqingzheng/p/15328319 ...

  3. SVN 、Git、Github的使用

    1.1 SVN 总结以及使用建议 每一次保存历史记录实际上就是一次提交 什么时候去保存历史记录? 完成了一个具体的功能模块 代码运行没有bug 当天工作结束提交一次 没有 bug 的前提下去提交一次 ...

  4. SVN和git的使用(附github的简单玩法)

    今天简单的总结了下SVN和git的使用,也尝试了下github,应该好好提高下自己的英文水平了,梦想有一天不再使用任何翻译软件. [svn]:集中式的代码管理工具(版本控制工具--版本记录) 1> ...

  5. Git常用命令及使用,GitLab/GitHub初探,Git/Svn区别

    Git安装配置及常用命令 0 Git本地分支管理 1 Git远程分支管理 2 Git Tag标签管理 3 Git Log日志 4 其它高级命令 5 常规使用及介绍 6 角色权限 7 分支定义 8 一般 ...

  6. 用好SVN与Git,版本管理都不是问题

    介绍一下SVN SVN:代码控制器(版本控制器),主要是为了多人协同开发项目,管理代码.也可以管理个人代码.也叫程序界的”后悔药“. SVN(是subversion的简称)是近年来一款基于C/S架构的 ...

  7. 版本管理——Git和SVN的介绍及其优缺点

    版本管理 概念:版本管理是软件配置管理的基础,它管理并保护开发者的软件资源.   好处:可以保留我们的历史版本,在代码开发到一半的时候,不至于无故丢失,还可以查看BUG的来龙去脉.   版本管理种类: ...

  8. CVS、SVN、Git、GitHub :版本控制系统

    1 1 1 Git常用命令 1 1 1 1 1 1 https://www.codecademy.com/learn/learn-git Learn Git You have now been int ...

  9. 从SVN到Git最强指南

    对于软件开发人员来说,版本控制系统他们再熟悉不过了,所谓版本控制系统就是软件项目开发过程中用于储存开发人员所写代码所有修订版本的软件.它的主要目的是实现开发团队并行开发.提高开发效率,对软件开发进程中 ...

随机推荐

  1. 构建自己的PHP框架(Redis)

    完整项目地址:https://github.com/Evai/Aier Redis 简介 'Redis' 是一个高性能的 'key-value' 数据库,其 'value' 支持 'String'.' ...

  2. 淘宝平台进行数据的实时传输: TimeTunnel介绍

    在班级工作中遇到似业务场景中的实时流传输数据的访问,所以,淘宝实时数据仓库这个人做了一些研究和了解. 本文介绍的业务场景和淘宝的设计TimeTunnel工具,从淘宝数据仓库团队沟通过程中的图像文字si ...

  3. 人活着系列Tanya和蔡健雅猪 (floyd)

    人活着系列之芳姐和芳姐的猪 Time Limit: 1000MS Memory limit: 65536K 题目描写叙述 芳姐特别喜欢猪,所以,她特意养了m个猪圈,顺便在k条无向边,每条边有都有起点v ...

  4. 【msdn wpf forum翻译】获取当前窗口焦点所在的元素

    原文:[msdn wpf forum翻译]获取当前窗口焦点所在的元素 原文地址: http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/6b ...

  5. PHP自动加载类__autoload()浅谈

    在面向对象编程中,都是以对象为单位的操作,如果我有两个不同的类,类A和类B,在同一个文件里,实例化对象,就能在这个文件同时调用类A和类B的函数 <?php #a.php class A{ pub ...

  6. Gradle编译失败 generating the main dex list

    编译打包的时候出现这个错误,信息很少. * What went wrong: Execution failed for task ':camCard_Asia_Trunk:transformClass ...

  7. LINQ查询表达式---------group子句

    LINQ查询表达式---------group子句 LINQ表达式必须以from子句开头,以select或group子句结束.使用guoup子句来返回元素分组后的结果.group 子句返回一个 IGr ...

  8. android Choose library dependency 搜索不到目标库

    问题:Choose library dependency 搜索不到目标库,百度了一下,发现尽是废话,无解,反正就是升级ide,我是 android studio是2.3.3(网上说升级到3.+就好了, ...

  9. 微信小程序把玩(二十一)switch组件

    原文:微信小程序把玩(二十一)switch组件 switch开关组件使用主要属性: wxml <!--switch类型开关--> <view>switch类型开关</vi ...

  10. 零元学Expression Blend 4 - Chapter 15 用实例了解互动控制项「Button」I

    原文:零元学Expression Blend 4 - Chapter 15 用实例了解互动控制项「Button」I 本章将教大家如何更改Button的预设Template,以及如何在Button内设置 ...