Linux系统下Git的基本配置和使用示例 |
本文标签:Linux,Git git config配置文件 复制代码 代码如下:$ git config --global user.name "John Doe" $ git config --global user.email johndoe@example.com 重申一遍,你只需要做一次这个设置 。如果你传递了 --global 选项,因为Git将总是会使用该信息来处理你在系统中所做的一切操作 。如果你希望在一个特定的项目中使用不同的名称或e-mail地址,你可以在该项目中运行该命令而不要--global选项 。 2.2 你的编辑器(Your Editor) 现在,你的标识已经设置,你可以配置你的缺省文本编辑器,Git在需要你输入一些消息时会使用该文本编辑器 。缺省情况下,Git使用你的系统的缺省编辑器,这通常可能是vi 或者 vim 。如果你想使用一个不同的文本编辑器,例如Emacs,你可以做如下操作: 复制代码 代码如下:$ git config --global core.editor emacs 2.3 你的比较工具(Your Diff Tool) 另外一个你可能需要配置的有用的选项是缺省的比较工具它用来解决合并时的冲突 。例如,你想使用vimdiff: 复制代码 代码如下:$ git config --global merge.tool vimdiff Git可以接受kdiff3, tkdiff, meld, xxdiff, emerge, vimdiff, gvimdiff, ecmerge, 和 opendiff作为有效的合并工具 。你也可以设置一个客户化的工具;查看第7章获得更多关于此的信息 。 2.4 检查你的设置(Checking Your Settings) 如果你想检查你的设置,你可以使用 git config --list 命令来列出Git可以在该处找到的所有的设置: 复制代码 代码如下:$ git config --list user.name=Scott Chacon user.email=schacon@gmail.com color.status=auto color.branch=auto color.interactive=auto color.diff=auto ... 你可能会看到一个关键字出现多次,这是因为Git从不同的文件中(例如:/etc/gitconfig以及'/.gitconfig)读取相同的关键字 。 在这种情况下,对每个唯一的关键字,Git使用最后的那个值 。 你也可以查看Git认为的一个特定的关键字目前的值,使用如下命令 git config {key}: 复制代码 代码如下: $ git config user.name Scott Chacon 2.5 获取帮助(Getting help) 如果当你在使用Git时需要帮助,有三种方法可以获得任何git命令的手册页(manpage)帮助信息: 复制代码 代码如下:$ git help <verb> $ git <verb> --help $ man git-<verb> 例如,你可以运行如下命令获取对config命令的手册页帮助: 复制代码 代码如下:$ git help config 这些命令非常友好,因为你可以在任何地方存取他们,即使非在线状态 。如果手册页和本书仍然不足而你需要个人的帮助,你可以试着使用Freenode IRCServer上的#git或#github 频道(irc.freenode.net) 。这些频道会定期由数百个对Git非常熟悉的专业人士所维护,他们会非常乐意帮助你 。 2.6 总结(Summary) 你应该对Git是什么以及Git与你可能使用的其它CVCS之间的不同有了一个基本的了解 。你也应当在你的系统中有了一个具有你个人标识的可以工作的Git版本 。是时候来学习一些Git的基本知识了 。
复制代码 代码如下:$ git push origin master 复制代码 代码如下:To git@192.168.1.3:k6.git ! [rejected] master -> master (non-fast-forward) error: failed to push some refs to git@192.168.1.3:k6.git To prevent you from losing history, non-fast-forward updates were rejected Merge the remote changes before pushing again. See the Note about fast-forwards section of git push --help for details. cbk@YCS:'/work/k6_130708/k6$ git fecth git: fecth is not a git command. See git --help. git push 错误,因为没有先pull最新的代码,需要以下操作: 复制代码 代码如下:$ git fetch origin $ git merge origin/master $ git push origin master 如果安装git后没有设置你的用户名称和e-mail地址,还需要先执行: 复制代码 代码如下:$ git config --global user.name "cbk" $ git config --global user.email <a target=_blank target="_blank" href="mailto:cbk@ylf.com">cbk@ylf.com</a> 这是非常重要的,因为每次Git提交都会使用该信息 。它被永远的嵌入到了你的提交中: 重申一遍,你只需要做一次这个设置 。如果你传递了 --global 选项,因为Git将总是会使用该信息来处理你在系统中所做的一切操作 。如果你希望在一个特定的项目中使用不同的名称或e-mail地址,你可以在该项目中运行该命令而不要--global选项 。 具体到此问题,如果没有设置你的用户名称和e-mail地址,则一直正确无法push代码 。 2、Git 跟踪一个文件的提交历史记录 复制代码 代码如下:git log -p “file name” 显示这个文件的每一行的最后提交commit,方便定位commit: 复制代码 代码如下:git blame “file name"
复制代码 代码如下:git show 75704c8543b033619a80439ddb0fd69cc7cb172c
复制代码 代码如下:git config --global user.name [username] git config --global user.email [email] 在git命令中开启颜色显示 复制代码 代码如下:git config --global color.ui true 2). 下面的命令将修改/etc/gitconfig文件,这是全局配置,所以admin来做一次就可以了 。 复制代码 代码如下:sudo git config --system alias.st status #git st sudo git config --system alias.ci commit #git commit sudo git config --system alias.co checkout #git co sudo git config --system alias.br branch #git branch 3). 也可以进入工作根目录,运行git config -e,这样就只会修改工作区的.git/config文件,但是暂时还用不着.
复制代码 代码如下:git reset --hard commit_id 复制代码 代码如下:git checkout commit_id 复制代码 代码如下:git clean –df commit_id |