Git客户端配置
- 查看配置信息:git config [--global | system | local] --list
- 设置用户名:git config [--global | system | local] user.name <yourname>
- 设置用户邮箱:git config [--global | system | local] user.email <youremail@xxx.com>
- 设置git命令别名:git config [--global | system | local] alias.<newCommand> <originalCommand>
忽略某些文件时,需要编写.gitignore,并且.gitignore文件本身要放到版本库里,并且可以对.gitignore做版本管理。
在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件。不需要从头写.gitignore文件,GitHub已经为我们准备了各种配置文件,只需要组合一下就可以使用了。所有配置文件可以直接在线浏览:
https://github.com/github/gitignore
忽略文件的原则:忽略操作系统自动生成的文件,比如缩略图等;忽略编译生成的中间文件、可执行文件等,也就是如果一个文件是通过另一个文件自动生成的,那自动生成的文件就没必要放进版本库,比如Java编译产生的.class文件;忽略你自己的带有敏感信息的配置文件,比如存放口令的配置文件。
忽略文件的语法规则如下:
- 注释:以'#'开始的行,被视为注释
- 忽略所有指定文件及目录:sample
- 忽略当前文件及目录:/dir
- 忽略目录:dir/
- 不忽略特定文件及目录:!sample
- 忽略文件及目录(通配符):*.dex忽略所有以.dex结尾的文件;*.[oa]忽略所有以.a和.o结尾的文件
除了上述方法,还有以下两种方法也可以实现文件的忽略:
- 修改.git/info/exclude文件来忽略文件,语法规则和.gitignore相同。这种方式对仓库全局有效,但只能对自己本地仓库起作用。
- 通过.git/config配置文件的core.excludesfile选项,指定一个忽略规则文件,这种方式对仓库全局有效。
Https方式Clone的Repository,保存Push时的用户名和密码
Git仓库的Https地址,主要用在一些防火墙或者代理服务器设置比较严格的情况下,比如有些公司禁止使用 SSH 连接外网,那么在这种情况下要想使用 Git ,就只能用 Https 方式了。
1. Windows
首先可以考虑使用GitHub for Windows,它已经包含了该助手,或者可以下载对应系统的版本:
Windows 7、
Windows 8、
Source 版本,然后解压缩文件并将里面的git-credential-winstore.exe 放到git 所在的目录运行即可。下次再 commit 的时候,会弹出个窗口询问用户名和密码,填写一次即可永久保存了。注意,一定要将 git-credential-winstore.exe 复制到 git 所在目录。
2. Linux
使用 'cache'认证助手包来缓存认证信息,运行下面的命令来启用凭据缓存:
$git config --global credential.helper 'cache --timeout 3600' #每次输入密码将保存3600秒,可设置为其它值
下面的命令可以查看 'cache' 认证助手的所有配置:
$git help credential-cache #
3. Mac
安装 osxkeychain凭据助手,并在 Git 中设置使用。注意,Git 版本需要 1.7.9 及以上才可使用。如果已经安装了homebrew,那么应该已经自带了osxkeychain,可以通过下面的命令验证:
$ git credential-osxkeychain
# Test for the cred helper
Usage: git credential-osxkeychain <get|store|erase>
如果没有安装,那么可以使用curl下载并安装:
$ curl -s -O http://github-media-downloads.s3.amazonaws.com/osx/git-credential-osxkeychain # Download the helper
$ chmod u+x git-credential-osxkeychain # Fix the permissions on the file so it can be run
接下来,将osxkeychain
安装到与Git安装目录相同的位置:
$ which git # Find where git is installed
/usr/local/git/bin/git
$ sudo mv git-credential-osxkeychain /usr/local/git/bin/ # Move the file so git can access it
Password: [enter your password]
然后,在Git的全局配置中进行设置:
$git config --global credential.helper osxkeychain
经过上面的设置,下次克隆 HTTPS 地址时会询问用户名和密码,并授权给osxkeychain,完成之后用户名和密码就会存储到keychain中,此后再也不会在 Git 中询问了。
总结:除了这些方法之外,还有一种使用 .netrc 文件的方式,可以参考学习。
Git Bash中文乱码(Windows)
1. ls不能显示中文目录
在
%GIT_HOME%/etc/
git-completion.bash中增加一行:
alias ls='ls --show-control-chars --color=auto'
2.
git commit不能提交中文注释
修改
%GIT_HOME%/etc/
inputrc中:
set output-meta on
set convert-meta off
3.
git log无法显示中文注释
在
%GIT_HOME%/etc/
profile中增加一行:
export LESSCHARSET=iso8859