Git基本知识
Git安装
对应安装包下载链接:http://git-scm.com/downloads
Git配置
.gitconfig文件,Git的配置信息存储文件。
注意:如果用了 --global 选项,那么更改的配置文件就是位于你用户主目录下的那个,以后你所有的项目都会默认使用这里配置的用户信息。
如果要在某个特定的项目中使用其他名字或者电邮,只要去掉 --global 选项重新配置即可,新的设定保存在当前项目的 .git/config 文件里。
命令窗口中输入:$ git config --global user.name "xxx" 配置用户名
命令窗口中输入:$ git config --global user.email "xxx" 配置邮箱
也可以通过命令编辑文件修改配置:vim ~/.gitconfig
Git工作区、暂存区、版本库
工作区:就是你在电脑里能看到的目录。
暂存区:英文叫stage, 或index。一般存放在 ".git目录下" 下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。
版本库:工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。
注意:
1)当执行 "git reset HEAD" 命令时,暂存区的目录树会被重写,被 master 分支指向的目录树所替换,但是工作区不受影响。
2)当执行 "git rm --cached <file>" 命令时,会直接从暂存区删除文件,工作区则不做出改变。
3)当执行 "git checkout ." 或者 "git checkout -- <file>" 命令时,会用暂存区全部或指定的文件替换工作区的文件。这个操作很危险,会清除工作区中未添加到暂存区的改动。
4)当执行 "git checkout HEAD ." 或者 "git checkout HEAD <file>" 命令时,会用 HEAD 指向的 master 分支中的全部或者部分文件替换暂存区和以及工作区中的文件。这个命令也是极具危险性的,因为不但会清除工作区中未提交的改动,也会清除暂存区中未提交的改动。
Git创建仓库
使用当前目录作为Git仓库,进入当前目录,初始化
$ git init
执行完该命令后会在当前目录下生成一个.git目录。
使用指令目录作为Git仓库。
$ git init test
初始化后,会在test目录下出现一个名为.git的目录,所有的Git需要的数据和资源都存放在这个中。
新增文件至当前目录下,需用git add 命令开始对这些文件就行跟踪,再提交:
$ git add *.c --将目录下以 .c 结尾的文件添加
$ git add test --将目录下test 文件添加
$ git commit -m '项目版本' --提交文件命令
git clone
从Git仓库中拷贝项目,命令如下:
git clone <repo> --repo为Git仓库
克隆到指定的目录,目录如下:
git clone <repo> <directory> --directory为本地目录
$ git clone git://github.com/schacon/git.git (实际存在Git仓库) --从Git仓库中拉取至本地git项目中,自动创建git文件夹
若想自定义新建项目名称,也可在后面加上新项目名称,如:
$ git clone git://github.com/schacon/git.git mytest --从Git仓库中拉取至本地mytest项目中