Git 配置好了,来 clone 个或者新建个仓库来试试,

$ git clone git@github.com:git/git.git

把 Git 的源码克隆下来,克隆会自动创建本地仓库,并创建本地 master 跟踪到远程仓库的 master 分支,一切都井然有序(这个仓库有点大,天朝的环境需要耐心)

$ git init
Initialized empty Git repository in c:/Users/X-k_/Desktop/hk/.git/ X-k_@HK ~/Desktop/hk (master)
$ ls -a
. .. .git

在当前文件夹下新建一个本地仓库

当前文件夹下出现个 .git 的隐藏文件夹,记录当前文件夹下的所有操作,任何文件的修改,删除,增加,都会记录在这个文件夹下。当然,你删掉这个文件夹,本地仓库也就没有了。

e.g

新建一个文件 readme.md ,然后用 git status 来查看状态

$ git status
On branch master
Initial commit
Untracked files:
(use "git add <file>..." to include in what will be committed)
readme.md
nothing added to commit but untracked files present (use "git add" to track)

提示信息新增一个未跟踪的文件 readme.md ,并提示用 git add 添加到跟踪,那么试下这个命令

$ git add readme.md

add 后面跟需要添加的文件名,如果想添加全部文件用 . 代替。

$ git add .

再来看下状态:

$ git status
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: readme.md

提示跟踪一个文件,并可以提交(括号中提示取消跟踪命令,后面再谈这个后悔药),跟踪的文件可以暂时保存状态,只有提交后才能被记录到仓库中,不然这些更改可以撤消

$ git commit

是提交命令,不过最好用选项 -m 加上个简短的提交信息

$ git commit -m "first commit"
[master (root-commit) 2e07671] first commit
1 file changed, 1 insertion(+)
create mode 100644 readme.md

查看下状态

$ git status
On branch master
nothing to commit, working directory clean

现在是干净的工作区,工作区就是指当前目前,修改的文件都被提交后,工作区和仓库的记录相同,即‘干净’

那么现在在 readme.md 中写一行 'This is a new repository'

查看下状态

$ git status
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: readme.md
no changes added to commit (use "git add" and/or "git commit -a")

提示三种操作

  • 添加 和上面的一样
  • 移除 另一个后悔药
  • 提交 加一个选项 -a 快速提交
$ git commit -a -m "update readme.md"
[master 9201c98] update readme.md
1 file changed, 1 insertion(+), 1 deletion(-)

快速提交下,然后看下提交历史

$ git log
commit 9201c98625b8c161fa22137e6cb7240c6585a0f0
Author: H•K <H-k_@outlook.com>
Date: Tue Sep 1 15:54:23 2015 +0800
update readme.md commit 2e07671a17caeec46fbcc4ff1a70b4414cd329fd
Author: H•K <H-k_@outlook.com>
Date: Tue Sep 1 15:37:10 2015 +0800
first commit

git log 输出提交日志

每个都有四行信息,

  1. 提交的哈希值,唯一
  2. 提交的作者,即 config 的配置
  3. 提交创建的时间
  4. 提交时附加的信息

git log 有很多的选项可选,可以自定义显示的信息多,比如

  • --stat 可以显示修改的文件数量和每个文件修改的行数
  • -p 显示修改的详细细节
  • -N N是数字,显示N个提交历史

更多选项参考 Git 基础 - 查看提交历史

Git 仓库和记录操作到仓库的更多相关文章

  1. Git:五、操作远程仓库

    0.一般流程 1)自己新写:GitHub创建有README的库 -> clone到本地 2)修改已有:GitHub上fork别人的仓库 -> clone自己账号下的库到本地 1.创建库 右 ...

  2. GIT 如何合并另一个远程Git仓库的文件到本地仓库里某个指定子文件夹并不丢失远程提交记录?

    问题背景:     最近在重新整理手中的一个项目,目前该项目分为PC项目,手机项目,某第三方接口项目,第三方接口服务项目和手机项目     因为之前规划的原因,原来的四个项目是分两个解决方案来管理的 ...

  3. Git命令的使用_操作远程仓库——详细教程3

    本博文讲述将本地仓库提交到GIT@OSC(或者是GitHub),故而需要用户首先有一个GIT@OSC(或者是GitHub)帐号. 我的GIT@OSC帐号是:https://git.oschina.ne ...

  4. Git 学习(三)本地仓库操作——git add & commit

    Git 学习(三)本地仓库操作——git add & commit Git 和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念.这在上文已有提及,本文具体说明什么是工作区及暂存区,以及 ...

  5. 【Git】原Git库拆分子目录作为新仓库,并保留log记录

    一.需求描述: 现有一个git仓库,Team A和Team B的人操作同一仓库的不同目录,Team A的dev希望Team B的dev没有权限review属于Team A的代码目录,故现需要先将这个g ...

  6. Git 初始化及仓库创建及操作

    一.基本信息设置 1.初始化设置用户名 2.初始化设置用户名邮箱 备注:该设置在Github仓库主页显示谁提交了该文件. 二.初始化一个新的Git仓库 1.创建文件夹 mkdir test 2.在文件 ...

  7. Git初始化及仓库创建和操作

    一.基本信息配置 1.全局配置用户名 git config --global user.name "YeHuan-byte" 2.全局配置邮箱 git config --globa ...

  8. 5. Git初始化及仓库创建和操作

    4. Git初始化及仓库创建和操作 基本信息设置 1. 设置用户名 git config --global user.name 'itcastphpgit1' 2. 设置用户名邮箱 git confi ...

  9. Pycharm和IDEA利用Git操作Github仓库

    1. Git Bash 选择一个本地代码仓库文件夹:D:/Github_Code/新建文件夹,然后在此目录打开git bash 依次进行: git init //首次需执行,之后可不用 git add ...

随机推荐

  1. cygwin安装

    我安装的是cygwin2.5.2,相关下载:https://cygwin.com/setup-x86_64.exe 先安装cygwin,x86_64版本,安装时选择库(gcc-core.gcc-c++ ...

  2. Java生成带小图标的二维码-google zxing 工具类

    近期一直忙于开发微信商城项目,应客户要求,要开发个有图标的二维码.经过两次改版,终于实现了该功能(第一次没有小图标,这次才整合好的),如下是完整代码 . 该代码使用Java7开发,另外使用 core- ...

  3. 连锁机构3D指纹考勤系统解决方案

    信息技术的高速发展加速了商业零售业连锁经营的信息化和全球化的进程,同时也推动了商业管理的变革.尽管人们对它的认识是被动与滞后的,但这种变革依然伴随着商业业态的转变和信息技术的发展或快或慢地在悄然进行着 ...

  4. Linux C相关基础

    系统求助 man 函数名 man 2 函数名    -    表示函数是系统调用函数 man 3 函数名    -    表示函数是C的库函数     eg:man fread     man 2 w ...

  5. 去繁从简--简化Message和Signal设置

    以往的版本中如果添加了消息或者信号类型的事件需要先在流程属性(设置流程ID的界面)中添加Message和Signal,之后再选择对应的事件在属性中的下拉框中选择已经定义的Message或Signal. ...

  6. MarkDown常用语法记录

    目录 1. 斜体和粗体 2. 分级标题 3. 超链接 3.1 行内式(推荐) 3.2 行外式 3.3 自动链接 4. 锚点 5. 列表 5.1无序列表 5.2有序列表 6. 引用 7. 插入图像 8. ...

  7. Compare接口

    1.Comparable接口 此接口强行对实现它的每个类的对象进行整体排序.此排序被称为该类的自然排序 ,类的 compareTo 方法被称为它的自然比较方法 .实现此接口的对象列表(和数组)可以通过 ...

  8. unity平台的预处理

    unity平台的预处理     在开发中,特别是unity的跨平台中,我们经常会在各个平台游走,如安卓版,苹果版,PC版.......在此不同的平台上,有可能我们需要做不同的操作.然而我们就可以用un ...

  9. excel读取

    一.jar包 二.工具类 package excel; import java.io.FileInputStream; import java.io.FileNotFoundException; im ...

  10. 输入scanner,if-else

    import java.util.Scanner; public class Job{ public static void main(String[] args){ Scanner scanner ...