Git基础01

Git基础教程,只介绍Git的基础命令,因为篇幅问题,将其分为4篇博客。

为什么是Git

一句话:Git简单,上手快,支持本地无网络提交,多人协作方便。
缺点:要精通,需要一定的过程。推荐使用命令行模式,对于用惯了GUI的人,不习惯。
Git入门教程很多,最简单的教程是《git - 简明指南》,稍微详细点的是廖雪峰的《Git教程》。
Git最全的教程是《Pro Git》(有中文版本)。
2015.09.17更新:有个歪果仁给我发邮件让我添加他的教程,有兴趣的请自行查看。Git Tutorial: A Comprehensive Guide
Git基础系列不准备详细的展开,因为跟上述教程的内容没有太大区别。只是把最常用的基础命令介绍出来。

Git的安装

在《git - 简明指南》上提供了三个系统的下载连接。我个人推荐在Windows上使用Cygwin的Git,或在Linux下使用Git。

创建

初始化仓库

1
2
3
$ mkdir gittest # 创建文件夹
$ cd gittest/ #切换到到文件夹
$ git init # 初始化仓库

初始化空的 Git 版本库于/home/Jeremy/gittest/.git/

1
$ git init --bare # 初始化裸仓库

初始化空的 Git 版本库于 /home/Jeremy/gittest/

克隆仓库

1
$ git clone /remote/url/of/repo.git local-repo

配置

加入--global参数将作为全局配置,否则,所有配置只针对本仓库有效。

1
2
$ git config --global user.name learnit #设置用户名
$ git config --global user.email higoge(at)gmail.com # 设置用户邮箱

以上两条指令若不执行,则无法commit。

1
$ git config --global core.autocrlf false # 取消git根据操作系统进行crlf的转换

添加和提交

1
$ git add 01.txt # 将01.txt添加到暂存区
1
2
3
4
$ git commit -m "添加01.txt文档" # 将暂存区的内容提交到仓库,并添加日志
[master(根提交) 49805b0] 添加01.txt文档
1 file changed, 1 insertion(+)
create mode 100644 01.txt
1
$ git commit -a -m [msg] # 提交所有已跟踪的文件的修改

只要被add过的文件均为跟踪文件,新增的文件没有被跟踪,需要手动add。

1
$ git commit # 如果不输入-m [msg],则调出COMMIT_EDITMSG,编写详细的提交信息

1
$ git commit --amend # 修改最后一次提交

注意:如果是已经push的commit,最好不要amend,否者会产生分支。

工作区与暂存区

图片来自廖雪峰的官方网站
工作区就是我们工作的文件夹。暂存区叫stage或者index。
git add就是把文件修改添加到暂存区。
git commit就是把暂存区的所有内容提交到当前分支。

Git基本工作流程

一图胜前言,无耻的盗图了。
图片来自网络

如果本文对你有所帮助,请小额赞助
~~ EOF ~~