初次接触git,为了记忆深刻,把学习的简单流程记录下来。

本文记录了Git在Ubuntu上的安装,配置,以及创建版本库和往库中添加文件的过程。


1、Git的安装:(Ubuntu-Linux非常友好的安装提示)

ubuntu@ubuntu-HP-Pro--MT:~$ git  //查看git是否安装
程序“git”尚未安装。 您可以使用以下命令安装:
sudo apt-get install git
ubuntu@ubuntu-HP-Pro--MT:~$

sudo apt-get install

 git
[sudo] password for ubuntu:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树

2、配置email and username

git config --global user.email "you@example.com"
git config --global user.name "Your Name"
--global参数,这台机器上的所有仓库,都会使用这个邮箱和用户名(也可以不同仓库不同的ID)。

3、创建版本库

//最好找个合适的地方,建个空目录
ubuntu@ubuntu-HP-Pro--MT:~$

mkdir

 joe
ubuntu@ubuntu-HP-Pro--MT:~$ cd joe/
ubuntu@ubuntu-HP-Pro--MT:~/joe$ mkdir learngit
ubuntu@ubuntu-HP-Pro--MT:~/joe$ pwd
/home/ubuntu/joe
ubuntu@ubuntu-HP-Pro--MT:~/joe$

cd learngit/

//git的初始化
ubuntu@ubuntu-HP-Pro--MT:~/joe/learngit$ git init
初始化空的 Git 版本库于 /home/ubuntu/joe/learngit/.git/
//发现最后多了.git的隐藏目录,这就是仓库ls -a可以查看这个目录

4、把文件添加到版本库

//在.git的同级目录下,也就是learngit目录里,创建文件并编写
$ touch readme.txt
$ vi readme.txt
//文件添加到版本库,并提交
ubuntu@ubuntu-HP-Pro--MT:~/joe/learngit$

git add readme.txt

 //Unix的哲学是“没有消息就是好消息”,说明添加成功。
ubuntu@ubuntu-HP-Pro--MT:~/joe/learngit$

git commit -m "joe's first txt"//

-m添加有意义的备注
[master (根提交) b401faf] joe's first txt
file changed, insertions(+) //改变了一个文件,插入了2行信息
create mode readme.txt //commit可以一次提交多个文件,所以你可以一次add多个文件如下:
$ git add file1.txt
$ git add file2.txt file3.txt
$ git commit -m "add 3 files."

5、修改文件再次添加

//修改文本的内容如下
Git is a distributed version control system.
Git is free software.
//git status查看仓库当前的状态
root@myubuntu:/home/ubuntu/joe/learngit# git status
位于分支 master
尚未暂存以备提交的变更:
(使用 "git add <file>..." 更新要提交的内容)
(使用 "git checkout -- <file>..." 丢弃工作区的改动) 修改: readme.txt 修改尚未加入提交(使用 "git add" 和/或 "git commit -a")
//git diff 可以查看具体修改了什么内容
root@myubuntu:/home/ubuntu/joe/learngit#

git diff

 readme.txt
diff --git a/readme.txt b/readme.txt
index f7249b8..2fdf0c4
--- a/readme.txt
+++ b/readme.txt
@@ -, +, @@
-Git is a version control system
+Git is a distributed version control system
Git is free software
//然后往仓库中添加和提交修改过的文件
root@myubuntu:/home/ubuntu/joe/learngit# git add readme.txt
root@myubuntu:/home/ubuntu/joe/learngit# git status
位于分支 master
要提交的变更:
(使用 "git reset HEAD <file>..." 撤出暂存区) 修改: readme.txt
//提交后再次查看状态(观察一下)
ubuntu@myubuntu:~/joe/learngit$

git commit -m "add distributed"

[master 942f575] add distributed
file changed, insertion(+), deletion(-)
ubuntu@myubuntu:~/joe/learngit$ git status
位于分支 master
无文件要提交,干净的工作区

Git学习笔记(1)——安装,配置,创建库,文件添加到库的更多相关文章

  1. Git学习笔记(一) 安装及版本库介绍

    安装Git 最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑.不过,慢慢地有人把它移植到了Windows上.现在,Git可以在Linux.Unix.Mac和 ...

  2. git学习笔记(二)—— 创建版本库&&版本管理

    一.创建版本库 创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录: mkdir gitHub_CXWcd gitHub_CXW git init Initialized empty G ...

  3. Node.js 学习笔记 (一) 安装配置

    Node.js 安装配置 本安装教程以Node.js v4.4.3 LTS(长期支持版本)版本为例 Window 上安装Node.js 你可以采用以下两种方式来安装. 1.Windows 安装包(.m ...

  4. [git 学习篇]自己在github创建一个远程服务器创库

    现在的情景是,你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,真是一举 ...

  5. Hadoop学习笔记: 安装配置Hadoop

    安装前的一些环境配置: 1. 给用户添加sudo权限,输入su - 进入root账号,然后输入visudo,进入编辑模式,找到这一行:"root ALL=(ALL) ALL"在下面 ...

  6. MySQL学习笔记-MHA安装配置

    一.配置主从同步   1. 本例中主从ip及端口 Master:10.1.5.8:3306 Slave1:10.1.5.9:3306 (候选master) Slave2:10.1.5.195:3306 ...

  7. Hadoop学习笔记: 安装配置Hive

    1. 在官网http://hive.apache.org/下载所需要版本的Hive,以下我们就以hive 2.1.0版为例. 2. 将下载好的压缩包放到指定文件夹解压,tar -zxvf apache ...

  8. [Freescale]E9学习笔记-LTIB安装配置

    转自:http://blog.csdn.net/girlkoo/article/details/44535979 LTIB: Linux Target Image Builder Freescale提 ...

  9. blfs(systemd版本)学习笔记-编译安装配置dhcpcd

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! dhcpcd项目地址:http://www.linuxfromscratch.org/blfs/view/stable-syst ...

  10. blfs(systemv版本)学习笔记-编译安装配置dhcpcd

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! dhcpcd项目地址:http://www.linuxfromscratch.org/blfs/view/8.3/basicne ...

随机推荐

  1. getElementsByTagName获得的不是数组的问题!

    getElementsByTag() returns a NodeList instead of an Array. You can convert a NodeList to an Array bu ...

  2. 判断Window在哪个屏幕

    最近在做窗口最大化时需要一个功能,如果是多个显示器的话,需要在当前显示器最大化,由于是根据屏幕长宽进行设置Window大小,没有使用WindowState.Maximized,window.Left不 ...

  3. paip.语义分析--分词--常见的单音节字词 2_deDuli 单字词 774个

    paip.语义分析--分词--常见的单音节字词 2_deDuli  单字词 774个 作者Attilax  艾龙,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址 ...

  4. Java 第16章 封装

    封装(encapsulation)     类使得数据和对数据的操作集成在一起,从而对使用该类的其他人来说,可以不管它的实现方法,而只管用它的功能,从而实现所谓的信息隐藏. 封装 , 使用类图描述类 ...

  5. hadoop多次搭建后,完整总结(累死宝宝了,搭建了十多遍了)

    1.安装JDK1.1上传运用软件FileZilla,将windows上的jdk压缩包放到linux的root目录下 1.2解压jdk #创建文件夹 mkdir /usr/java(不要挂在在" ...

  6. Docker ntpdate Permition error

    After building a Dockerfile, I run it. I figure out that there is something wrong with local time. S ...

  7. Java日志系统及框架分析

    最近在考虑将容器(Tomcat)内的应用日志统一成slf4j + logback,主要目的有: 快速定位应用日志输出路径,方便日志的采集: 能动态调整日志的级别,方便线上问题定位: 方便在容器层面做扩 ...

  8. PHP的高效IOC框架——CanoeDI

    一个非常简单且实用的IoC框架,相对于其他的Ioc框架有如下特点: 高效: 框架使用了非常实用且高效的算法,使得框架本身对应用的影响微乎其微,且框架提供了C扩展,最大限度的将性能提升到最高. 配置简单 ...

  9. wpf 报错: 在 AddNew 或 EditItem 事务过程中不允许“DeferRefresh”。

    今天修改Bug的时候遇到一个问题: datagrid 设置了双击事件,双击弹出一个窗口,在多次点击后报错:在 AddNew 或 EditItem 事务过程中不允许“DeferRefresh” 网上查了 ...

  10. android camera 自定义开发

    1.检测是否有摄像头 /** Check if this device has a camera */ private boolean checkCameraHardware(Context cont ...