关于Git

git是当今最流行的版本控制系统,因为是诞生在Linux操作系统下,因此Linux对git天生有最好的支持,但好在各路大牛的努力下,目前在Windows也能较为完美的使用。以下便是我使用git上的一些经验。

客户端版本选择

命令行客户端

  • Git For Windows:Git的官方客户端,优先推荐这个客户端,有安装版和免安装版,我使用的是免安装版,即PortableGit。网址:https://git-scm.com/

  • Cygwin:Cygwin是一个在Windows平台上运行的类Unix模拟环境,稍微麻烦一些,下载时需要勾选devel/git和shells/bash_completion的软件包,如果你熟悉Linux/Unix环境,使用Cygwin就可以自选所需的软件包,能够增强Git的使用体验。网址:http://www.cygwin.com/

图形界面客户端

  • TortoiseGit:大名鼎鼎的Tortoise,如果不习惯使用命令行,就可以使用图形界面,但同样需要先安装Git,然后安装TortoiseGit后,配置好Git程序路径才可使用,使用体验与TortoiseSVN基本一致。网址:https://tortoisegit.org

中文乱码的处理

在Windows上使用Git,一般都会遇到中文乱码的问题,网上能搜到的解决方案有不少,比如以下2篇:

《Git for windows 中文乱码解决方案》

《GIT乱码解决方案汇总》

我的操作系统是Window7,服务端操作系统是Fedora且使用UTF-8编码,在解决中文乱码上花了不少时间,最后总结了几个解决步骤(可能仅适用于我的环境):

1.将core.quotepath设为false,就不会对0x80以上的字符进行quote,否则提交文件时可能会显示类似\346\265\213\350\257\225\346\226\207\344\273\266.txt的乱码

git config --global core.quotepath false

2.设置提交编码为utf-8

git config --global i18n.commitencoding utf-8

3.设置日志打印编码为utf-8

git config --global i18n.logoutputencoding utf-8

4.git log命令不像其它vcs一样,n条log从头滚到底,它会恰当地停在第一页,按space键再往后翻页。这是通过将log送给less处理实现的。以上即是设置less的字符编码,使得$ git log可以正常显示中文。因此编辑/etc/profile文件,添加如下一行

export LESSCHARSET=utf-8

5.右键git-bash窗口标题栏,选择Options,找到Text,将Locale设置为zh_CN,Character set设置为UTF-8

在add文件时可能遇到的警告信息

warning: LF will be replaced by CRLF

fatal: CRLF would be replaced by LF

这是行结束符自动转换导致的,可以关闭自动转换功能来解决,关于行结束符的解释:http://blog.csdn.net/feng88724/article/details/11600375

git config --global core.autocrlf false

至此,Git就可以在Windows下正常的使用了。

在Windows下使用Git的更多相关文章

  1. windows下安装git & 在git@OSC上推送代码

    第一部分 windows下安装git 1.下载最新版本的git:直接百度“git”,如图所示,点击立即下载. 也可以直接在官网下载最新版本的git:http://www.git-scm.com/dow ...

  2. Windows下搭建Git开发环境

    Windows下搭建Git开发环境主要有以下三种方法: 1,VS,vs2013和vs2015中已经集成了git插件了 2,msysGit+TortoiseGit 3,msysGit+SourceTre ...

  3. git(5) windows下 pycharm + git(github) ,在本地方便管理

    本篇博客讲解一下,windows下如何在pycharm下使用git(使用github设置和git一样),在本地进行commit,push,pull等操作 优点:简单,方便 pycharm版本:5.0. ...

  4. 如何在windows下安装GIT

    如何在windows下安装GIT 分步阅读 Git是一个免费的.开源的版本控制软件.在Windows上安装git,一般为msysgit,官方下载地址为 http://code.google.com/p ...

  5. Windows下配置Git多账号github码云

    Windows下配置Git多账号github码云 1.配置了全局用户名和邮箱 $ git config --global user.email "你的邮箱" $ git confi ...

  6. 本地windows下搭建git的本地服务器

    本地windows下搭建git的本地服务器 准备工作: 本地安装java环境,配置环境变量(略) 下载gitblit文件,百度一大堆 开始第一步: 减压gitblit压缩包到某个目录下,比如我在:H: ...

  7. windows下安装Git安装

    一:Git是什么? Git是一个代码仓库,属于分散型版本管理系统. 二:在windows下安装Git 载msysgit 1. 访问 msysGit 的项目主页,下载 msysGit.http://ms ...

  8. windows 下搭建git服务器,及问题处理。

    最近要做一个源码管理服务器,权衡了一下还是git最适合,搭建服务器前看了网上一些windows下搭建git服务器的帖子,感觉还比较简单,没有太多需要配置的地方,于是开始动手. 我选择的是 gitfor ...

  9. windows下使用Git

    如何在windows下使用Git? 通过这里下载Git bash,你就可以像在Linux命令行一样操作git工具. 进入Git bash环境,默认是在当前用户路径下. 在Linux下,我们有根目录,在 ...

  10. 使用Windows下的git工具往github上传代码 踩坑记录

    使用Windows下的git工具往github上传代码 踩坑记录 背景 由于以前接触的项目都是通过svn进行版本控制,现在公司项目使用git,加上自己平时有一个练手小项目,趁着周末试着把项目上传到自己 ...

随机推荐

  1. BZOJ1264——[AHOI2006]基因匹配Match

    1.题意,求最长公共子序列,每个数字在序列中都出现5次 2.分析:最长公共子序列的标准解法是dp,$O(n^2)$过不了的,然后我们发现判断哪两个位置优化的地方用$5n$就可以搞定了,那么我们用BIT ...

  2. Eclipse安装Freemarker插件

    方法一:手动安装 手动安装没有成功 步骤: 1. 下载freemarker-ide : http://sourceforge.net/projects/freemarker-ide/files/ 2. ...

  3. 可以正确显示表格线的Grid item view

    Android上要显示一个表格,没有Swing那么专门的JTable可用. 搜了下,一般用GridView,有诸多不便和需要自己实现的地方: 跟ListView一样的Adapter,getView的时 ...

  4. javax.validation.ConstraintViolationException---Hibernate后台实体校验

    javax.validation.ConstraintViolationException ... 71 moreCaused by: javax.validation.ConstraintViola ...

  5. iOS开发UI篇—CAlayer(创建图层)

    iOS开发UI篇—CAlayer(创建图层) 一.添加一个图层 添加图层的步骤: 1.创建layer 2.设置layer的属性(设置了颜色,bounds才能显示出来) 3.将layer添加到界面上(控 ...

  6. caffe初试(一)happynear的caffe-windows版本的配置及遇到的问题

    之前已经配置过一次caffe环境了: Caffe初试(一)win7_64bit+VS2013+Opencv2.4.10+CUDA6.5配置Caffe环境 但其中也提到,编译时,用到了cuda6.5,但 ...

  7. 浅析session&cookie

    session&cookie没有出现的黑暗时代 大家都知道,HTTP协议是一种无状态的协议,本次请求下一次请求没有任何的关联,所有没有办法直接用http协议来记住用户的信息,试想一向,每一次点 ...

  8. checkbox实现互斥

    <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>标题页-学无忧(www.x ...

  9. Swap in C C++ C# Java

    写一个函数交换两个变量的值. C: 错误的实现: void swap(int i, int j) { int t = i; i = j; j = t; } 因为C语言的函数参数是以值来传递的(pass ...

  10. UVA766 Sum of powers(1到n的自然数幂和 伯努利数)

    自然数幂和: (1) 伯努利数的递推式: B0 = 1 (要满足(1)式,求出Bn后将B1改为1 /2) 参考:https://en.wikipedia.org/wiki/Bernoulli_numb ...