参考

Git局限性讨论

  • 高复杂度

  • 复杂的子模块
  • 大型二进制文件的资源消耗
    一份文件的所有版本都会被保留在本地版本库中
  • 版本库只能作为一个整体被处理
  • 版本库只能作为整体被授权
  • 能用于历史分析的图形化工具偏弱

Git分布式系统的优点

  • 高性能:几乎所有操作无需进行网络访问,均可以直接本地执行
  • 高效的工作方式:开发者可通过多个本地分支在不同任务之间进行快速切换
  • 离线功能:开发者可以在没有服务器连接的情况下执行提交,创建分支,标签等功能,之后在上传给服务器
  • 灵活的开发进程:我们可以公司和团队中为其他部门建立专用的版本库
  • 备份作用:由于每个开发者都持有一根拥有完整历史的版本库副本,所以因服务器故障而导致的数据丢失的可能性是微乎其微
  • 可维护性:对于那些难以尝试的重构工作,我们可以在将成功传送给原始版本库之前,在版本库副本先进行尝试

GIt操作

回退版本

  • 查找版本
    git reflog
  • 然后本地回退到这个版本
    git reset --hard [特定哈希值]
  • 提交到仓库,更新远端版本
    git push --force

Git项目管理的更多相关文章

  1. 基于Git项目管理客户端SourceTree的免注册安装及远程连接方法

    作为程序员,不可避免的要在github上查询代码,而在企业项目中,为了使得项目好管理需要使用项目管理客户端,所以接下来详细讲解一下基于git的sourceTree在windows系统下的安装及与Git ...

  2. 在xcode5下利用Source Control 做 git 项目管理

    xcode5做了很大的更新,其中一点非常实用的功能是集成了Source control项目管理,而且和git做了完美的结合:非常实用: 使用: 在新建项目时,选择 下面的 Create a git r ...

  3. Git项目管理常用命令

    安装Git Bash后,地址:https://git-scm.com/downloads 根据自己的操作系统选择对应是安装方式 可参见码云给出的文档:http://git.mydoc.io/?t=18 ...

  4. Ruby on Rails Tutorial 第一章 之 Git项目管理

    1.安装和设置 (1)git的安装(略) (2)初始化设置 $ git config --global user.name "LihuaSun" $ git config --gl ...

  5. Git项目管理出现 .gitignore文件不起作用的解决

    在git管理项目的代码过程中总会有需要忽略的目录或者文件,比如编译过程中产生的目录和文件,这时候就需要 .gitignore来进行目录或文件的忽略了. 如果没有 .gitignore文件,可以自己手工 ...

  6. 【Git项目管理】分布式 Git - 分布式工作流程

    分布式 Git - 分布式工作流程 你现在拥有了一个远程 Git 版本库,能为所有开发者共享代码提供服务,在一个本地工作流程下,你也已经熟悉了基本 Git 命令.你现在可以学习如何利用 Git 提供的 ...

  7. 【Git项目管理】Git分支 - 远程分支

    远程分支 远程引用是对远程仓库的引用(指针),包括分支.标签等等. 你可以通过 git ls-remote (remote) 来显式地获得远程引用的完整列表,或者通过 git remote show ...

  8. 【Git项目管理】git新手入门——基础教程

    一.Git工作流程 直接上手看图,了解Git工具的工作流程: 以上包括一些简单而常用的命令,但是先不关心这些,先来了解下面这4个专有名词. Workspace:工作区 Index / Stage:暂存 ...

  9. 项目管理之 Git 管理软件 SourceTree for Mac

    Git 项目管理: Mac Terminal 生成 Git 秘钥流程: git config --global user.name "yourname" git config -- ...

随机推荐

  1. June 23rd 2017 Week 25th Friday

    Life doesn't get easier, you just get stronger. 生活从未变得轻松,是你在一点一点变得坚强. So in the same way we can get ...

  2. Vue、PHP、Bootstrap联手打造简单数据管理表格

    这是一个用Vue.Bootstrap和PHP一起写的小实例,回顾总结了一下之前学习的知识,顺带添加点学习乐趣. 先上效果图: 用到的知识有:Vue数据绑定及组件.Bootstrap界面.PHP-AJA ...

  3. 整理了一下关于KVO的姿势

    http://www.jianshu.com/p/d104daf7a062 1) + (BOOL)automaticallyNotifiesObserversForKey:(NSString *)th ...

  4. Linux CentOS6系统安装最新版本Node.js环境及相关文件配置

    Node.js,当前应用非常广泛的Javascript运行环境,采用C++编写的,目前应用较多的用于WEB应用中,执行效率还是非常高的,虽然老左不从业程序的开发,但是有些时候在玩VPS的时候还是会遇到 ...

  5. 理解JavaScript变量值

    JavaScript变量可能包含两种不同数据类型的值:基本类型值和引用类型值.基本类型值指的是简单的数据段,而引用类型值是指那些可能由多个值构成的对象. 在将一个值赋给变量时,解析器必须确定这个值是基 ...

  6. Linux下rm -rf删除文件夹报错_ Device or resource busy

    1.错误信息 rm: cannot remove `speechd-centos_6.2-prtl-pred-mf34/modules/t2p/py/third/g2p/.nfs00000000039 ...

  7. C# 文件流FileStream 实现多媒体文件复制 StreamReader StreamWriter 读取写入文本

    #region 实现多媒体文件的复制 string source = @"F:\123\source.avi";//源文件路径 string target = @"F:\ ...

  8. 图片左右滚动控件(带倒影)——重写Gallery

    转http://blog.csdn.net/ryantang03/article/details/8053643 今天在网上找了些资料,做了一个图片左右滚动的Demo,类似幻灯片播放,同时,图片带倒影 ...

  9. ios Block详细用法

    ios Block详细用法 ios4.0系统已开始支持block,在编程过程中,blocks被Obj-C看成是对象,它封装了一段代码,这段代码可以在任何时候执行.Blocks可以作为函数参数或者函数的 ...

  10. Stack栈 Heap堆

    Stack(栈) 栈(stack) 又名堆栈,它是一种运算受限的线性表.其限制是仅允许在表的一端进行插入和删除运算.这一端被称为栈顶,相对地,把另一端称为栈底.向一个栈插入新元素又称作进栈.入栈或压栈 ...