Git学习笔记1-Git基础
1.创建版本库
$ mkdir /d/learngit #创建空目录
$ cd learngit #进入目录
$ git init #将该目录初始化成Git仓库
2.配置信息
1)配置用户信息:
$ git config --global user.name “Mike” #配置用户名称
$ git config --global user.email “mk_xinchi@163.com” #配置邮箱地址
2)配置difftool工具:
$ git config --global diff.tool bc3
$ git config --global difftool.bc3.path "bcomp.exe的路径"
3)配置mergetool工具:
$ git config --global merge.tool bc3
$ git config --global mergetool.bc3.path "bcomp.exe的路径"
4)查看配置信息
$ git config --list #查看已有配置信息
3.获取帮助信息
$ git help config #查看config命令的帮助信息
4.添加文件到暂存区
$ git add readme1.txt #将文件1添加到暂存区
5.提交文件到仓库
$ git commit -m "wrote a readme file" #将暂存区的所有文件提交到仓库,并添加注释
$ git commit --amend #修改最近一次的提交,如果要修改文件内容,先git add添加新的文件,再commit --amend,如果还需要修改提交信息,使用下面的指令
$ git commit --amend -m '新的提交信息' #修改上次提交的提交信息
也可以跳过git add,直接将跟踪过的文件从工作区全部提交到仓库
$ git add -a -m "new file" #把所有已经跟踪过的文件暂存并一起提交,从而跳过git add
6.查看文件状态
在将文件提交到仓库之前,建议使用git status 查看暂存区当前状态,有哪些文件被修改。这样能防止你不小心提交了您不想提交的东西。
$ git status

7.查看修改内容
$ git diff <filename> #1.当工作区有改动,暂存区为空:查看工作区和最新提交文件的差异;2.当工作区有改动,暂存区不为空:查看工作区和暂存区文件的差异;
$ git diff --cached/staged <filename> #查看暂存区(staged)和最新提交(HEAD)的文件的差异
$ git diff HEAD <filename> #查看工作区(workspace)和最新提交(HEAD)的差异
$ git diff <commit-id> <filename> #查看工作区(workspace)和指定提交(commit-id)的差异
$ git diff --cached/staged <commit-id> <filename> #查看暂存区和指定提交的差异
$ git diff <commit-id> <commit-id> #查看两个指定提交的的差异
8.查看提交日志
$ git log #显示从进到远的commit提交日志
$ git log --oneline #仅输出前七条commit hash和commit message $ git log -p -2 #-p选项展开每次提交的内容差异,-2选项仅显示最近两次更新
$ gitk #打开git log可视化窗口
9.查看命令历史
$ git reflog
附:

Git学习笔记1-Git基础的更多相关文章
- Git学习笔记:Git基础
一.Git与其他版本控制系统的差别 Git 只关心文件数据的整体是否发生变化,而大多数其他系统则只关心文件内容的具体差异.这类系统每次记录有哪些文件作了更新,以及都更新了哪些行的什么内容.如下图,其他 ...
- Git 学习笔记--1.Git基础操作
取得项目的Git仓库 有两种方式取得Git项目仓库.第一种是在现存的目录下,通过导入所有文件来创建新的Git仓库.第二种是从已有的Git仓库克隆出一个新的镜像仓库. 在工作目录中初始化新仓库 要对现 ...
- Git学习笔记3 git revert
我们难免会因为种种原因执行一些错误的commit / push,git提供了revert命令帮助程序员修复这样的错误. 举个例子,下图是git commit 的历史记录 git revert 命令会通 ...
- git学习笔记——查看git历史记录
1.查看Git日志: 命令:git log 默认不加参数,git日志会按照最新的日期从上往下显示 参数:-p 显示版本间的代码差异 -数字 显示部分的提交 -哈希值 显示指定的版本 2.指定查找范围: ...
- Git 学习笔记--Eclipse Git 插件安装
http://benjsicam.me/blog/how-to-setup-eclipse-git-plugin-egit-for-github-part-1-tutorial/ http://ben ...
- Git学习笔记(10)——搭建Git服务器
本文主要记录了Git服务器的搭建,以及一些其他的配置,和最后的小总结. Git远程仓库服务器 其实远程仓库和本地仓库没啥不同,远程仓库只是每天24小时开机为大家服务,所以叫做服务器.我们完全可以把自己 ...
- GIT学习笔记(5):变基
GIT学习笔记(5):变基rebase 变基 引入变基 在Git中整合来自不同分支的修改主要有两种方法:merge以及rebase. 整合分支最容易的方法是merge,他会把两个分支的最新快照以及两者 ...
- GIT学习笔记(4):远程分支
GIT学习笔记(4):远程分支 远程分支 远程分支是什么 远程分支是对远程仓库中的分支的索引.它们是一些无法移动的本地分支:只有在GIT进行网络交互时才会更新.远程分支就是书签,提醒着你上次连接远程仓 ...
- GIT学习笔记(3):分支管理
GIT学习笔记(3):分支管理 何谓分支 GIT是如何存储数据的 GIT不是存储文件差异或者变化量,而是一系列文件的快照.在Git提交时,会保存一个提交(commit)对象,该对象包含一个指向暂存内容 ...
- Pro Git 学习笔记
Pro Git 学习笔记 文档地址:Pro Git原文地址:PRO GIT 学习笔记 git常见命令 1.Git起步 初次运行Git前的配置 用户信息 git config --global user ...
随机推荐
- PHP转Go系列:字符串
字符串的赋值 在PHP中,字符串的赋值虽然只有一行,其实包含了两步,一是声明变量,二是赋值给变量,同一个变量可以任意重新赋值. $str = 'Hello World!'; $str = 'hia'; ...
- 【cf375】D. Tree and Queries(dsu on tree+线段树)
传送门 题意: 给出一颗以\(1\)为根的有根树,每个结点有个颜色\(c_i\). 之后要回答\(m\)组询问,每组询问包含\(v_i,k_i\),要回答以\(v_i\)为根的子树中,颜色出现次数不小 ...
- vue项目关闭eslint校验
[前言] eslint是一个JavaScript的校验插件,通常用来校验语法或代码的书写风格.这篇文章主要介绍了vue项目关闭eslint校验,需要的朋友可以参考下 [主体] 简介eslint esl ...
- luoguP5094 [USACO04OPEN]MooFest 狂欢节
get 到的 这种需要求 含 max 的式子,枚举最大值的方法非常普遍. 类似的,还有含 min , gcd 的式子,枚举他们也很普遍 主要难点 我们首先想到,先按 v 从小到大排序,因为这样既可以简 ...
- (day54)六、事务、分组、F、Q、常用字段、事务
目录 一.聚合查询aggregate 二.分组查询annotate 三.F与Q查询 (一)F查询 1. 查询库存数大于卖出数的书籍 2. 将所有书的价格上涨100块 3.将所有书的名称后面全部加上 & ...
- LG2996 「USACO10NOV」Visiting Cows
问题描述 LG2996 题解 和没有上司的舞会双倍经验? \(\mathrm{Code}\) #include<bits/stdc++.h> using namespace std; te ...
- CF1041C Coffee Break
CF1041C Coffee Break 题目大意: 给定nn个数和一个kk,这nn个数都不超过mm 每次从没被去掉的数里面选一个数aa,去掉aa,然后可以任意一个b(b>a+k)b(b> ...
- 题解 P2719 【搞笑世界杯】
其实懂了之后很简单,但是刚开始真的很难想.. d[a][b]表示剩a张A类票和b张B类票时,最后两张票相同的概率 那么此时的排队的第一个人只有两种选择 拿A类票或者B类票 抛硬币得到的可能性当然是二分 ...
- BoW算法及DBoW2库简介
由于在ORB-SLAM2中扩展图像识别模块,因此总结一下BoW算法,并对DBoW2库做简单介绍. 1. BoW算法 BoW算法即Bag of Words模型,是图像检索领域最常用的方法,也是基于内容的 ...
- 物联网架构成长之路(33)-EMQ数据存储到influxDB
一.前言 时隔一年半,技术变化特别快,学习也要跟上才行.以前写过EMQ数据转存问题,当时用了比较笨的方法,通过写插件的方式,把MQTT里面的数据发送到数据库进行存储.当时也是为了学习erlang和em ...