创建git仓库和初始化仓库
2015-08-17 23:06
246 查看
1、创建版本库
什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。
所以,创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录:
如果你使用Windows系统,为了避免遇到各种莫名其妙的问题,请确保目录名(包括父目录)不包含中文。
2、通过
[/code]
瞬间Git就把仓库建好了,而且告诉你是一个空的仓库(empty Git repository),细心的读者可以发现当前目录下多了一个
如果你没有看到
在图形化界面ctrl+h就可以显示
也不一定必须在空目录下创建Git仓库,选择一个已经有东西的目录也是可以的。不过,不建议你使用自己正在开发的公司项目来学习Git,否则造成的一切后果概不负责。
现在我们编写一个
一定要放到
和把大象放到冰箱需要3步相比,把一个文件放到Git仓库只需要两步。
第一步,用命令
执行上面的命令,没有任何显示,这就对了,Unix的哲学是“没有消息就是好消息”,说明添加成功。
第二步,用命令
简单解释一下
嫌麻烦不想输入
为什么Git添加文件需要
初始化一个Git仓库,使用
添加文件到Git仓库,分两步:
第一步,使用命令
第二步,使用命令
下面就是clone
注意把Git库的地址换成你自己的,然后进入
如果有多个人协作开发,那么每个人各自从远程克隆一份就可以了。
你也许还注意到,GitHub给出的地址不止一个,还可以用
使用
Git支持多种协议,包括
创建主分支
什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。
所以,创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录:
$ mkdir learngit $ cd learngit $ pwd /Users/michael/learngit
pwd命令用于显示当前目录。
如果你使用Windows系统,为了避免遇到各种莫名其妙的问题,请确保目录名(包括父目录)不包含中文。
2、通过
git init命令把这个目录变成Git可以管理的仓库(这里一定要指明用户):
$ git init
xueqy@xueqy:~$ cd Documents
xueqy@xueqy:~/Documents$ mkdir learngit
xueqy@xueqy:~/Documents$ cd learngit
xueqy@xueqy:~/Documents/learngit$ git initInitialized empty Git repository in /home/xueqy/Documents/learngit/.git/
[/code]
瞬间Git就把仓库建好了,而且告诉你是一个空的仓库(empty Git repository),细心的读者可以发现当前目录下多了一个
.git的目录,这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了。
如果你没有看到
.git目录,那是因为这个目录默认是隐藏的,用
ls -ah命令就可以看见。
在图形化界面ctrl+h就可以显示
也不一定必须在空目录下创建Git仓库,选择一个已经有东西的目录也是可以的。不过,不建议你使用自己正在开发的公司项目来学习Git,否则造成的一切后果概不负责。
现在我们编写一个
readme.txt文件,内容如下:
Git is a version control system. Git is free software.
一定要放到
learngit目录下(子目录也行),因为这是一个Git仓库,放到其他地方Git再厉害也找不到这个文件。
和把大象放到冰箱需要3步相比,把一个文件放到Git仓库只需要两步。
第一步,用命令
git add告诉Git,把文件添加到仓库:
git add readme.txt
执行上面的命令,没有任何显示,这就对了,Unix的哲学是“没有消息就是好消息”,说明添加成功。
第二步,用命令
git commit告诉Git,把文件提交到仓库:
$ git commit -m "wrote a readme file"
xueqy@xueqy:~/Documents/learngit$ git add readme.txt xueqy@xueqy:~/Documents/learngit$ git commit -m "wrote a readme file" [master (root-commit) 67112dd] wrote a readme file 1 file changed, 2 insertions(+) create mode 100644 readme.txt
简单解释一下
git commit命令,
-m后面输入的是本次提交的说明,可以输入任意内容,当然最好是有意义的,这样你就能从历史记录里方便地找到改动记录。
嫌麻烦不想输入
-m "xxx"行不行?确实有办法可以这么干,但是强烈不建议你这么干,因为输入说明对自己对别人阅读都很重要。实在不想输入说明的童鞋请自行Google,我不告诉你这个参数。
git commit命令执行成功后会告诉你,1个文件被改动(我们新添加的readme.txt文件),插入了两行内容(readme.txt有两行内容)。
为什么Git添加文件需要
add,
commit一共两步呢?因为
commit可以一次提交很多文件,所以你可以多次
add不同的文件,比如:
$ git add file1.txt $ git add file2.txt file3.txt $ git commit -m "add 3 files."
小结
现在总结一下今天学的两点内容:初始化一个Git仓库,使用
git init命令。
添加文件到Git仓库,分两步:
第一步,使用命令
git add <file>,注意,可反复多次使用,添加多个文件;
第二步,使用命令
git commit,完成。
下面就是clone
git clone git@192.168.8.240:git/gitskills.git
注意把Git库的地址换成你自己的,然后进入
gitskills目录看看,已经有
README.md文件了。
如果有多个人协作开发,那么每个人各自从远程克隆一份就可以了。
你也许还注意到,GitHub给出的地址不止一个,还可以用
https://github.com/michaelliao/gitskills.git这样的地址。实际上,Git支持多种协议,默认的
git://使用ssh,但也可以使用
https等其他协议。
使用
https除了速度慢以外,还有个最大的麻烦是每次推送都必须输入口令,但是在某些只开放http端口的公司内部就无法使用
ssh协议而只能用
https。
小结
要克隆一个仓库,首先必须知道仓库的地址,然后使用git clone命令克隆。
Git支持多种协议,包括
https,但通过
ssh支持的原生
git协议速度最快。
创建主分支
相关文章推荐
- 孤儿进程与僵尸进程
- Prim算法与Dijkstra算法的联系与区别
- 秋季养生多吃三种鱼
- USACO CHAPTER 1 1.1 Ride 水题
- TimesTen_重建业务日志表
- iOS编程:学习篇(十一)
- 常用的网络开发库
- 剑指Offer面试题:2.二维数组中的查找
- TCP相关知识
- 逆波兰表达式实现计算器(附c++代码)
- JLink v8克隆版破解向导
- mac git+shell实现快速提交push
- HDU 4700 Flow(瓶颈生成树)
- crazyflie2.0状态记录
- Oracle 学习之性能优化(二)游标
- tips android 汇总
- Eclipse中修改Maven配置
- POJ3667--Hotel(区间合并)
- 九度 Online Judge 算法 刷题 题目1155:鸡兔同笼
- Windows下的函数调用约定