初次接触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. Red hat 6.4下面的qt安装

    运行环境:Red hat 6.4 去官网下载qt5.2并且安装 当启动的时候会出现如下错误 核心载入失败: /opt/Qt5.2.0/Tools/QtCreator/lib/qtcreator/plu ...

  2. 16.iOS APP图标和启动画面尺寸

    1. 桌面图标 (app icon) for iPhone6 plus(@3x) : 180 x 180 for iPhone 6/5s/5/4s/4(@2x) : 120 x 120 2. 系统搜索 ...

  3. Good-Bye

    嘛……以一种奇怪的姿势滚粗了…… 如果这个Blog能给未来的OIer们一些帮助的话,它也不枉存在了…… 我的OI之路也能以另一种形式延续下去吧…… 也许能搞ACM的话会再开?…… 不管怎么说,各位再见 ...

  4. Activity设置全屏的三种方法

    1.super.onCreate(savedInstanceState)方法之前调用:            setTheme(android.R.style.Theme_Light_NoTitleB ...

  5. 我与solr(四)--solrJ

    SolrJ索引库: solr提供的一个客户端操作框架,在文件/solr6.2/dist下面可以找到该jar包solrj.jar以及相关jar包,可以使用maven添加. java使用solrJ如下: ...

  6. 用Ant实现Java项目的自动构建和部署

    原文地址:http://tech.it168.com/j/2007-11-09/200711091344781.shtml         本文请勿转载! Ant是一个Apache基金会下的跨平台的构 ...

  7. 【摘】【网络】无线AP与无线路由器有什么区别?

    参考网站: 1.无线上网百科 http://wifi.baike.com/article-290204.html 图片 1 今天我们从功能.应用.组网和成本四个方面为大家区分无线路由器和无线AP.当前 ...

  8. 是uibutton跟tableviewcell同步使用一个bug

    这个问题是uibutton跟tableviewcell同步使用一个bug,不关delay一点毛事,证据就是点击事件没问题,so,搜到一个方法解决了这个问题.uibutton分类symbian2+ios ...

  9. C++ std::map::erase用法及其陷阱

    1.引入: STL的map中有一个erase方法用来从一个map中删除制定的节点 eg: map<string,string> mapTest; typedef map<string ...

  10. java - Stack栈和Heap堆的区别

    首先分清楚Stack,Heap的中文翻译:Stack—栈,Heap—堆.         在中文里,Stack可以翻译为“堆栈”,所以我直接查找了计算机术语里面堆和栈开头的词语:        堆存储 ...