`
yidongkaifa
  • 浏览: 4052728 次
文章分类
社区版块
存档分类
最新评论

Git学习笔记(1)

 
阅读更多
Git学习笔记(1)

任何软件开发工作,只要不是开发人员极少,那么就都需要使用版本控制软件。
版本控制软件保证了开发工作的安全,有序,方便不同人代码的交流。同时也有许多其他的方便功能,比如查看旧版本等。
Git就是一个优秀的版本控制软件,目前用于维护android,linux内核等开源大工程的开发工作。
Git是一个分布式的版本控制系统,他诞生于linux内核开源社区与BitKeeper商业公司合作的终止,因为BitKeeper收回了linux开源社区免费使用BitKeeper的权利。linux社区吸取教训,为防重蹈覆辙,开发了一套属于自己的版本控制系统,这就是Git。
开发之初,Git开发者对于Git设定了以下目标:

1.速度
2.简单的设计
3.对非线性开发的强力支持(允许上千个并行开发的分支)
4.完全分布式
5.有能力高效管理类似linux内核一般的超大规模项目(速度和数据量)

Git是一个什么样的系统呢,Git的特点如下:

1.直接快照,而非比较差异
2.几乎所有操作都可以本地执行
3.时刻保持数据完整性
4.多数操作仅添加数据

理解Git的这些特点,你能更好的理解他的有些命令中一些令人迷惑的设计,从而帮助你更好的使用Git提供的工具。

Git的安装过程非常简单,这里略过不谈,需要注意的是,Git目前处于活跃的开发期,相差几个版本之间可能会有很多差异,因此,请与你的合作者约定好Git的版本。

Git的配置:
Git的配置是非常重要的一步。分布式版本控制系统是一个弹性非常大的系统,这有时会令人对层出不穷的并行分支感到困惑,这点在Git这个系统中体现非常明显,因此,配置好你的个人信息(以及以后的分支信息,提交信息等),你们所有人都会受益。

Git的配置信息存储于以下三个位置
1./etc/gitconfig:这个文件存储对所有用户都是用的配置,git config中的 --system选项对应修改此文件。
2.~/.gitconfig:这个文件存储的配置只对当前用户有效,git config中的 --global选项对应修改此文件。
3.工作目录中.git.config:在这里配置仅对当前项目有效。无选项的配置对应修改此文件。

1.用户信息
你可以使用如下命令配置你的个人信息
#git config --global user.name "yourname"
#git config --global youremail@**.com

--global选项配置的是你主目录下的文件。如果你想在特定目录下使用其他名字或email,去掉--global即可。

2.文本编辑器
有时Git需要你输入一些额外信息,这时他会调用文本编辑器提醒你到了输入信息的时间了。
这个文本编辑器默认是vi或vim。你可以使用以下命令更改(比如你想把默认文本编辑器改为Emacs)
#git config --global core.editor emacs

3.差异分析器
这是用来分析差异信息的工具,主要用于merge命令分析差异时,话不多说,命令如下
#git config --global merge.tool vimdiff

4.查看配置信息
#git config --list

5.获取帮助
最后一点,相信大家都不陌生
#git help <command>
#git <command> --help
#man git-<command>

以merge为例
#git help merge
GIT-MERGE(1) Git Manual GIT-MERGE(1)

NAME
git-merge - Join two or more development histories together

SYNOPSIS
git merge [-n] [--stat] [--no-commit] [--squash]
[-s <strategy>] [-X <strategy-option>]
[--[no-]rerere-autoupdate] [-m <msg>] <commit>...
git merge <msg> HEAD <commit>...

DESCRIPTION
Incorporates changes from the named commits (since the time their histories diverged f
安全易懂。查询命令,就这个最方便了。
关于Git的简介就到这里了。

未完待续,敬请期待

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics