场景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. Git学习笔记(两)

    删除文件 假设需要从Git删除文件,我们必须从删除列表中的跟踪文件(从临时区域中删除).然后提交.可以使用git rm工作订单完成.联合司令部从工作区删除指定的文件.以后就不会出如今未跟踪文件清单中. ...

  2. 构建自己的PHP框架(Twig模板引擎)

    完整项目地址:https://github.com/Evai/Aier Twig 模板引擎 模版引擎 twig 的模板就是普通的文本文件,也不需要特别的扩展名,.html .htm .twig 都可以 ...

  3. TCP网络通讯如何解决分包粘包问题(有模拟代码)

    TCP作为常用的网络传输协议,数据流解析是网络应用开发人员永远绕不开的一个问题. TCP数据传输是以无边界的数据流传输形式,所谓无边界是指数据发送端发送的字节数,在数据接收端接受时并不一定等于发送的字 ...

  4. 解决popup不随着window一起移动的问题

    原文:解决popup不随着window一起移动的问题 当我们设置Popup的StayOpen="True"时,会发现移动窗体或者改变窗体的Size的时候,Popup并不会跟随着一起 ...

  5. 基于IdentityServer4的单点登录——项目基本结构与流程

    组成 IdentityServer,Api和Client(客户端,asp .net core)本文以官方demo:https://github.com/IdentityServer/IdentityS ...

  6. 图像滤镜艺术---(Instagram)1977滤镜

    原文:图像滤镜艺术---(Instagram)1977滤镜 图像特效---(Instagram)1977滤镜 本文介绍1977这个滤镜的具体实现,这个滤镜最早是Instagram中使用的 ,由于Ins ...

  7. WPF判断两个PNG图片是否碰撞

    这个方法有几个前提 1.两个Image必须在一个Canvas中 2.两个Image的Canvas.Top和Canvas.Left必须赋值 上一篇讲了判断一个PNG图片某个点是否透明 这个基本类似的方法 ...

  8. Android零基础入门第26节:layout_gravity和gravity大不同

    原文:Android零基础入门第26节:layout_gravity和gravity大不同 上一期我们一起学习了LinearLayout线性布局的方向.填充模型和权重,本期来一起学习LinearLay ...

  9. delphi读取ini文件

    ini文件在系统配置及应用程序参数保存与设置方面,具有很重要的作用,所以可视化的编程一族,如vb.vc.vfp.delphi等都提供了读写ini文件的方法,其中delphi中操作ini文件,最为简洁, ...

  10. .NET解析xml字符串,通过反射给实体类对象赋值,获取实体类数据列表

    /// <summary> /// 解析xml字符串 转换为实体类列表数据 /// </summary> /// <param name="xmlStr&quo ...