本文不是谈论git具体命令的技术文章。
原文地址:http://blog.csdn.net/ffb/article/details/11206067

我之前发了一条关于git中如何处理中文文件名的微博,引发了一些质疑,

原文地址:http://weibo.com/1662047260/A1FVmlHPf

主要的质疑点在于为什么要用git管理中文文件,比如如下两位:



我想这些质疑的可能主要由以下两个误区引起:

1.可能很多人把git当作github的客户端了,以为git管理的文件只能提交到github或者其他的git网站上。

2.认为git只能管理代码

由于git的仓库数据是分布式存储的,具有脱离服务器依然全功能可用、历史可查的特性,所以对于如何使用git的问题,我们完全可以发挥一下想象力,让git不光可以管理代码,还可以管理我们的其他文件,让所有的文档、资料甚至照片都处于有历史可查、可分支编辑的状态。

所以,这个场景下,git可能会管理中文名称的文件就毫不奇怪了。我们可以把我们的工作文档(工作记录、设计文档、会议纪要什么的)、私人文档(收支记录、游记、blog备份什么的)全部使用git来进行本地管理。以设计文档为例,如果每次设计修改后的文档都提交到git,我们以后就可以通过git log来查看某个变动是在什么时候发生的。

示例图片:用git管理专利申请文档

然后,可以再扩展一下,最近360和百度正在进行网盘空间大战,最终的结果无非就是网盘的空间越来越大。

而网盘都会提供一个叫“同步盘”的功能,就是可以由网盘的客户端自动把本地的某个目录作为同步盘,其中的所有文件和修改会自动上传到网盘中。而国内的网盘基本都是不提供历史版本记录功能的(国外的如box.com提供,但是也需要付费)。所以说,对于文档这类很重要的文件,我们完全可以在同步盘根目录上git init一下,把所有的文档使用git来进行管理,这时,git仓库也会被同步盘自动同步到网盘中,我们的所有文件就都有历史可查了!

图示:以网盘进行文件夹同步

可以看出,网盘客户端会自动把.git文件夹上传,而.git文件夹就是git仓库。这样,当你使用其他机器进行同步的时候,就会拿下这个文档的全部历史修改信息。

所以,git不光可以用来管理代码,它的实际用途是可以方方面面的,配合带同步功能的网盘,比如UbuntuOne、Dropbox、115网盘等,就可以实现带历史记录的云同步功能,极大的方便的了我们的工作和生活。

如何使用git的更多相关文章

  1. Git 子模块 - submodule

    有种情况我们经常会遇到:某个工作中的项目需要包含并使用另一个项目. 也许是第三方库,或者你 独立开发的,用于多个父项目的库. 现在问题来了:你想要把它们当做两个独立的项目,同时又想在 一个项目中使用另 ...

  2. Git 在团队中的最佳实践--如何正确使用Git Flow

    我们已经从SVN 切换到Git很多年了,现在几乎所有的项目都在使用Github管理, 本篇文章讲一下为什么使用Git, 以及如何在团队中正确使用. Git的优点 Git的优点很多,但是这里只列出我认为 ...

  3. Git与Repo入门

    版本控制 版本控制是什么已不用在说了,就是记录我们对文件.目录或工程等的修改历史,方便查看更改历史,备份以便恢复以前的版本,多人协作... 一.原始版本控制 最原始的版本控制是纯手工的版本控制:修改文 ...

  4. Git Bash的一些命令和配置

    查看git版本号: git --version 如果是第一次使用Git,你需要设置署名和邮箱: $ git config --global user.name "用户名" $ gi ...

  5. 在Ubuntu 16.10 安装 git 并上传代码至 git.oschina.net

    1. 注册一个账号和创建项目 先在git.oschina.net上注册一个账号和新建一个project ,如project name 是"myTest". 2.安装git sudo ...

  6. 史上最详细git教程

    题外话 虽然这个标题很惊悚,不过还是把你骗进来了,哈哈-各位看官不要着急,耐心往下看 Git是什么 Git是目前世界上最先进的分布式版本控制系统. SVN与Git的最主要的区别 SVN是集中式版本控制 ...

  7. [版本控制之道] Git 常用的命令总结(欢迎收藏备用)

    坚持每天学习,坚持每天复习,技术永远学不完,自己永远要前进 总结日常开发生产中常用的Git版本控制命令 ------------------------------main-------------- ...

  8. 【解决方案】Myeclipse 10 安装 GIT 插件 集成 步骤 图解

    工程开发中,往往要使用到集成GIT ,那么下面说说插件安装步骤 PS:以Myeclipse 10 为例,讲解集成安装步骤. ----------------------main------------ ...

  9. git 命令

    切换仓库地址: git remote set-url origin xxx.git切换分支:git checkout name撤销修改:git checkout -- file删除文件:git rm  ...

  10. git亲测命令

    一.Git新建本地分支与远程分支关联问题 git checkout -b branch_name origin/branch_name 或者 git branch --set-upstream bra ...

随机推荐

  1. C# - 委托_求定积分通用方法

    代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Syst ...

  2. ssh登录的时候,根本不给输入密码的机会,直接拒绝,是因为BatchMode的设置

    BatchMode no“BatchMode”如果设为“yes”,passphrase/password(交互式输入口令)的提示将被禁止.当不能交互式输入口令的时候,这个选项对脚本文件和批处理任务十分 ...

  3. 基于visual Studio2013解决面试题之1003字符串逆序

     题目

  4. HDU ACM 1098 Ignatius's puzzle

    分析:裴蜀定理,a,b互质的充要条件是存在整数x,y使ax+by=1.存在整数x,y,使得ax+by=c.那么c就是a,b的公约数. 如果存在数a ,由于对随意x方程都成立.则有当x=1时f(x)=1 ...

  5. <转载>使CSS文字图片div元素居中方法之水平居中的几个方法

    文字居中,文字垂直居中水平居中,图片居中,图片水平居中垂直居中,块元素垂直居中?当我们在做前端开发是时候关于css居中的问题是很常见的.情 况有很多种,不同的情况又有不同的解决方式.水平居中的方式解决 ...

  6. MSSQL - 因为数据库正在使用,所以无法获得对数据库的独占访问权。

    关于“因为数据库正在使用,所以无法获得对数据库的独占访问权”的最终解决方案   今天在使用SQL Server2005对某个数据库进行还原操作的时候,出现了如上问题,“因为数据库正在使用,所以无法获得 ...

  7. 【Demo 0009】Android 组件(BroadcastReceiver)

    本章学习要点:        1.  了解Broadcast的作用;        2.  掌握自定义广播和系统广播的接收:        3.  掌握广播的发送:

  8. android用canvas绘制两种波纹效果

     波形效果有几种不同的呈现形式,比如从中间向四周散开的波形,也就是熟知的水涟漪:还有上下波动的曲线,像五线谱等.英文中可以称作Wave或者Ripple,所以暂且叫它们WaveView.WaveLayo ...

  9. CSDN头版头条 《近匠》 Wijmo 5 CTO:从Web到移动,我的25年编程生涯

    现年52岁的Bernardo Castilho先生是GrapeCity(中文名为葡萄城)ComponentOne公司的CTO,在与他的对话过程中.充满风趣严谨和厚重的历史感. 当作为年轻人的我们崇拜着 ...

  10. ADOConnection数据库连接池

    unit AdoconnectPool; interface uses Classes, Windows, SysUtils, ADODB, IniFiles, forms; type TADOCon ...