Git教程-安装与创建版本库
Git是一个分布式版本控制系统,他通过命令行使用的工具,Github是提供Git仓库托管服务的网站
安装参考:
https://www.liaoxuefeng.com/wiki/896043488029600/896067074338496
创建版本库
参考链接:https://www.liaoxuefeng.com/wiki/896043488029600/896827951938304
首先创建一个文件夹
$ mkdir learngit
$ cd learngit
$ pwd
/Users/michael/learngit
然后变成Git可以管理的仓库
$ git init
Initialized empty Git repository in /Users/michael/learngit/.git/
然后里面会多处一个.git的文件夹,这个文件夹是用来存储管理信息的,有人给我说不要动他
λ ls -ah
./ ../ .git/
我们也可以进入一个已经有文件的文件夹使用git init命令,同样也能把这个文件变成版本库
向版本库中添加文件
版本控制系统只能够跟踪文本文件的改动,如TXT文件,网页,所有的程序代码,如果文件时二进制文件,虽然能管理,但只能把每次改动的二进制文件给串联起来,不知到怎么串联的。
因为文本是有编码的,比如中文有常用的GBK编码,日文有Shift_JIS编码,如果没有历史遗留问题,强烈建议使用标准的UTF-8编码,所有语言使用同一种编码,既没有冲突,又被所有平台所支持。
不要使用windows自带的记事本编辑文本文件,因为Microsoft的开发人员会在文件开头添加一个十六进制字符串,而这个字符串会带来很多莫名奇妙的问题,比如写好的HTML网页在显示的时候会在开头显示一个?
一定要放到learngit
目录下(子目录也行),因为这是一个Git仓库,放到其他地方Git再厉害也找不到这个文件。
第一步:用命令git add
告诉Git,把文件添加到仓库:
C:\Users\Administrator.SC-2012\learngit (master -> origin)
λ git add readme.txt C:\Users\Administrator.SC-201\learngit (master -> origin)
λ
执行上面的命令,没有任何显示,这就对了,Unix的哲学是“没有消息就是好消息”,说明添加成功。
第二步,用命令git commit
告诉Git,把文件提交到仓库:(commit:保证)
λ git commit -m "创建了一个readme.txt"#-m后面是对本次提交文件的说明
[master (root-commit) b30fedb] 创建了一个readme.txt
1 file changed, 2 insertions(+)#一个文件被改动,添加了两行内容
create mode 100644 readme.txt
为什么Git添加文件需要add
,commit
一共两步呢?因为commit
可以一次提交很多文件,所以你可以多次add
不同的文件,比如:
λ git add file1.txt C:\Users\Administrator.SC-201605202132\learngit (master -> origin)
λ git add file2.txt file3.txt#中间用空格而不是逗号隔开 C:\Users\Administrator.SC-201605202132\learngit (master -> origin)
λ git commit -m'添加了三个文件'
[master 06bcd78] '添加了三个文件'
3 files changed, 3 insertions(+)
create mode 100644 file1.txt
create mode 100644 file2.txt
create mode 100644 file3.txt
最新文章
- 阿里云服务器Linux CentOS安装配置(十)安装Discuz
- 为什么我坚持学习C语言?
- 【leetcode】Excel Sheet Column Title
- 四、优化及调试--网站优化--Yahoo军规中
- nrf51822裸机教程-硬件timer
- 20145227 《Java程序设计》实验五实验报告
- 第一个MySQL 存储过程
- orcherd 汉化
- MFC可编辑的ListCtrl
- 【HDOJ】3592 World Exhibition
- bzoj1643 [Usaco2007 Oct]Bessie's Secret Pasture 贝茜的秘密草坪
- T-SQL基础(1) - T-SQL查询和编程基础
- jQuery(5)——动画
- SpringCloud笔记七:Zuul
- java.——最大子序列和(前提是:全部都是非负数)
- iOS - 栈顶VC控制器的获取
- 20155201 2016-2017-2 《Java程序设计》第八周学习总结
- sparksql 操作hive
- linux进程通信:消息队列
- zabbix api