#!/bin/sh
# 全局提交用户名与邮箱
git config --global user.name "Yuchen Deng"
git config --global user.email loaden@gmail.com
# 中文编码支持
echo "export LESSCHARSET=utf-8" > $HOME/.profile
git config --global gui.encoding utf-8
git config --global i18n.commitencoding utf-8
git config --global i18n.logoutputencoding gbk
# 全局编辑器,提交时将COMMIT_EDITMSG编码转换成UTF-8可避免乱码
git config --global core.editor notepad2
# 差异工具配置
git config --global diff.external git-diff-wrapper.sh
git config --global diff.tool tortoise
git config --global difftool.tortoise.cmd 'TortoiseMerge -base:"$LOCAL" -theirs:"$REMOTE"'
git config --global difftool.prompt false
# 合并工具配置
git config --global merge.tool tortoise
git config --global mergetool.tortoise.cmd 'TortoiseMerge -base:"$BASE" -theirs:"$REMOTE" -mine:"$LOCAL" -merged:"$MERGED"'
git config --global mergetool.prompt false
# 别名设置
git config --global alias.dt difftool
git config --global alias.mt mergetool
# 取消 $ git gui 的中文界面,改用英文界面更易懂
if [ -f "/share/git-gui/lib/msgs/zh_cn.msg" ]; then
rm /share/git-gui/lib/msgs/zh_cn.msg
fi
首先要说明的是:这里介绍的方法都是大部分是本人“悟”出来的,所以网上难有流传!
好方法不能自己私藏,否则就白忙乎这几天了,分享给有需要的朋友们。如果有转载,敬请注明来自*CSDN老邓*作品。
呵呵,给自己打广告,实在是无耻之极,权当无聊之时打字之用。
欢迎流传,为最优秀的分布式版本管理系统Git做宣传!!
步骤:
1. 下载:http://loaden.googlecode.com/files/gitconfig.7z
2. 解压到:<MsysGit
安装目录>/cmd/,例如:D:\Program Files\Git\cmd
3. 进入Bash,执行gitconfig
搞定什么了?
看看gitconfig的内容先:
Perl code
这个脚本解决了:
1. 中文乱码
2. 图形化Diff/Merge
3. 还原英文界面,更好懂
其中最有价值的,就是Git的Diff/Merge外部工具TortoiseMerge配置。
安装MsysGit后,一个命令即可完成配置。
适用于MsysGit安装版与绿色版。
网上关于为Git配置TortoiseMerge来进行diff和merge的介绍几乎没有(反正我没有搜索到),但我认为TortoiseMerge是最好用的,单文件(一个可执行程序,绿色版,下载地址:http://sourceforge.net/projects/tortoisesvn/files/Tools/1.6.7/TortoiseDiff-1.6.7.zip/download
),实在是绝配!
为什么不使用TortoiseGit?他们不是集成了TortoiseMerge吗?
理由:TortoiseGit只有Windows才有,我更喜欢git gui,结合gitk,跨平台实在相同的操作方式,更爽!
如果您离不开TortoiseGit,这篇文章就直接无视吧。
分享到:
相关推荐
在 Windows 平台下使用 Git 时,经常会碰到中文乱码的问题,这个问题是由于 Git 的配置不当引起的。下面我们将详细介绍如何解决 Windows 下 Git 中文乱码的问题。 首先,我们需要了解 Git 中文乱码的原因。Git 使用...
在软件开发过程中,Git是广泛使用的版本控制系统,用于追踪代码的变化并协助多人协作。然而,当多个人同时修改同一份文件时,Git可能会产生合并冲突,这时就需要一种有效的方式来解决这些冲突。 "Atom-merge-...
5. **版本历史查看**:演示如何使用`git log`、`git diff`等命令查看提交历史和文件差异,理解版本间的演变。 6. **分支管理**:介绍Git强大的分支功能,如`git branch`、`git checkout`、`git merge`,强调分支在...
7. 版本控制策略:良好的Git实践包括定期拉取最新代码(`git pull`)、使用分支隔离开发任务、避免直接在主分支上提交代码,以及利用`git rebase`或`git merge --no-ff`进行冲突较少的合并。 总之,Git是软件开发不...
3. **添加与提交**:当项目中的文件发生变化时,需要先用`git add`命令将改动添加到暂存区,然后使用`git commit`提交这些改动到本地仓库,附带提交信息以记录这次改动的原因。 4. **版本回溯**:`git log`命令可以...
此外,熟练使用`git log`查看提交历史,`git status`检查当前状态,`git diff`比较文件差异,以及`git reset`回退到某个特定提交,都是日常Git操作的基础。 本视频教程的前五节可能已经教授了Git的安装、初始化仓库...
在Git中,版本对比是通过`git diff`命令实现的。此命令可以比较工作目录与暂存区、暂存区与上一次提交,或者两个任意的提交之间的差异。通过对比,我们可以清晰地看到哪些文件或代码行发生了变化,这在多人协作的...
Git与Github教程详细介绍了Git的工作机制,Git命令行的基础学习,Git-Eclipse和Nginx的准备工作,Git与Github分支体系,Git与Github的远程和本地工作原理,Git与Github克隆实战和最后的课程精华总结部分,可以帮助...
Git Extras是一款非常实用的命令行工具,它是对Git原生...由于这个工具是用C/C++编写的,所以标签中提到的"C/C++"可能是指其底层实现语言。总的来说,Git Extras是Git用户的一个强大补充,值得在日常开发中尝试和使用。
Git提供了工具和策略来解决这些冲突,包括手动编辑冲突文件和使用`git merge --abort`或`git reset`命令。 9. **Git图形化界面**:除了命令行工具,还有许多图形化的Git客户端,如SourceTree、GitHub Desktop等,...
- **合并分支**:当开发完成,需要将分支上的改动合并到主分支(通常是master或main)时,使用`git merge <branch-to-merge>`命令。Git会尝试自动合并代码,如果存在冲突,需要手动解决。 - **解决冲突**:在合并...
Git是分布式版本控制系统,用于跟踪对文件和项目文件夹的更改。对于新手来说,掌握基本的Git操作至关...同时,了解`git status`、`git log`、`git diff`等其他常用命令也是很重要的,它们有助于了解项目的状态和历史。
# 进入到Git管理的项目根目录,执行如下命令发起 merge request 请求,默认请求合并到 test 分支,-a 用来指定审核委派人, # 执行 merge 等同于 merge test,或执行 merge 其他远程分支名,具体用法如下: # merge ...
脚手架使用方法 cnpm install 安装相关依赖 npm run watch 开启监视 刷新 npm run generate 生成一个新的 page (并且在顶层的 app.json 中添加这个 page) 有命令行交互 npm run build 小程序项目文件夹选中 dist ...
Git是一种分布式版本控制系统,它在软件开发领域尤其是开源项目中被广泛使用。Git的出现极大地改进了源代码的管理和协作流程。本节将详细介绍Git的基本概念、主要功能以及如何使用Git进行源代码管理。 首先,Git的...
《diff2 diff算法实践》 在信息技术领域,`diff`是一种广泛应用的算法,主要用于比较文本文件之间的差异。这个算法能够高效地找出两个文件之间不同之处,从而帮助开发者追踪代码变化,进行版本控制,或者合并冲突。...
在Windows环境下下载Android源码,通常需要通过Git工具来完成,因为Google开源了Android的源码并使用Git进行版本管理。下面将详细介绍如何在Windows上批量下载Android源码。 首先,你需要下载Git客户端。你可以访问...
以下是一些关于如何解决Git中文乱码问题的知识点: 首先,我们需要理解Git的配置文件`.gitconfig`,它存储了用户的全局设置,包括字符编码设置。你可以通过`git config --list`查看当前的配置。如果未设置`core....