Git学习整理-还在持续更新中

2019-03-17  本文已影响0人  Thor_果冻

[TOC]简书什么时候才能支持目录啊。。。。。。。。。。。

Git学习整理

更新2019-8-22

学习自
极客时间-玩转Git三剑客
Git官网
猴子都能懂得git入门

在线git练习
常用 Git 命令清单
一个好用的Git命令大全

安装Git

官网安装教程

Windows打开Git Bash输入git --version查看当前安装git版本信息,如果是Mac直接打开命令行输入git --version

Git最小配置

git config --global user.name "dongdong.wu"
git config --global user.email "withwudongdong@gmail.com"
git config --global color.ui auto

config的三个作用域

git config --local    //只针对某个仓库
git config --global   //针对当前用户所有仓库
git config --system   //针对当前系统所有登录的用户

显示config的配置信息

git config --list
git config --list --local
git config --list --global
git config --list --system

也可以查看当前用户下的.gitconfig

cd
cat .gitconfig

创建Git仓库

//1.创建一个新项目
mkdir GitTest
//2.初始化该项目
cd GitTest
git init  //执行完成后,提示Initialized empty Git repository in C:/Users/Thor/Desktop/GitTest/.git/
//3.查看是否初始化项目成功,用下面命令可以看到一个.git文件表示初始化成功
ls -al

提交认知

一般我们自己本地git在提交分为3个区域:

  1. 我们自己的工作目录
  2. git add files之后文件进入的暂存区
  3. git commit之后文件进入的版本历史

如果有远程仓库,给Git正在的区域分布为下面四个区域:

下面图片来源为:常用 Git 命令清单

引用阮一峰的网络日志的图片

在GitTest添加四个文件

这样之后我们的四个文件都创建好了。

查看当前工作目录与暂存区的关系

git status,输入当前命令可以看到下面提示。

On branch master

No commits yet

Untracked files:
  (use "git add <file>..." to include in what will be committed)

    fourDir/
    one.txt
    three.txt
    two.txt

nothing added to commit but untracked files present (use "git add" to track)

告诉我们下面这四个文件git从来没有管理过,那怎么可以管理呢?可以看到上面提示中已经给出我们答案了git add 文件就可以添加管理了。

git add 命令简单介绍

简单的例子

git add 可以直接后面加多个文件或文件夹

进行一次commit操作

git commit命令

thor@tiantian:~/Documents/GitTest$ git commit -m "add four files"
[master (root-commit) b989dc2] add four files
 4 files changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 fourDir/four_dir_one.txt
 create mode 100644 one.txt
 create mode 100644 three.txt
 create mode 100644 two.txt

git diff 命令简单介绍

git commit 命令简单介绍

查看一下提交记录

git log命令查看一下当前提交记录

thor@tiantian:~/Documents/GitTest$ git log
commit b989dc26fa089d76de381ace2e360d69ab60e9ea (HEAD -> master)
Author: dongdong.wu <withwudongdong@gmail.com>
Date:   Sun Mar 17 14:49:31 2019 +0800

    add four files

git log 命令简单介绍

具体可以查看Git官网查看,下面我就简单列举我用过的。官网地址

至此一次简单的git提交就完成了。

git修改文件名称

第一种笨方法

# 第一步查看当前文件夹下有哪些文件
thor@tiantian:~/Documents/GitTest$ ls
fourDir  one.txt  three.txt  two.txt

# 第二步,我要把one.txt 重名了为 one.md
thor@tiantian:~/Documents/GitTest$ mv one.txt one.md

# 第三步 看本地文件是否重命名成功
thor@tiantian:~/Documents/GitTest$ ls
fourDir  one.md  three.txt  two.txt

# 第四步 把新改的文件添加到暂存区
thor@tiantian:~/Documents/GitTest$ git add one.md

# 第五步 删除原来暂存区中的文件,即one.txt
thor@tiantian:~/Documents/GitTest$ git rm one.[按两下TAB键会有下面提示]
one.md   one.txt  
thor@tiantian:~/Documents/GitTest$ git rm one.txt
rm 'one.txt'

# 第六步 查看当前暂存区,可以可看到提示就是 renamed:    one.txt -> one.md
thor@tiantian:~/Documents/GitTest$ git status
On branch master
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

    renamed:    one.txt -> one.md

第二种方法(推荐)

  1. 因为使用了第一种方法文件名已经被改变了,所以我们要先恢复到原来版本状态。首先先用git reset --hard命令重置暂存区与工作区,与上一次commit保持一致。

  2. 然后通过git status可以看到改变的都被取消了。在通过ls命令可以看到文件名被恢复原来样子了。

  3. 现在我们就通过一个简单命令实现第一种方法。git mv one.txt one.md就可以实现第一种方法效果

    thor@tiantian:~/Documents/GitTest$ git mv one.txt one.md
    thor@tiantian:~/Documents/GitTest$ git status
    On branch master
    Changes to be committed:
      (use "git reset HEAD <file>..." to unstage)
    
     renamed:    one.txt -> one.md
    
    thor@tiantian:~/Documents/GitTest$ ls
    fourDir  one.md  three.txt  two.txt
    
  4. 提交变更

    thor@tiantian:~/Documents/GitTest$ git commit -m "mv one.txt to one.md"
    [master 218dc3b] mv one.txt to one.md
     1 file changed, 0 insertions(+), 0 deletions(-)
     rename one.txt => one.md (100%)
    thor@tiantian:~/Documents/GitTest$ git log
    commit 218dc3bf854ae9f21c335d45c7370a9d3bb5ebb3 (HEAD -> master)
    Author: dongdong.wu <withwudongdong@gmail.com>
    Date:   Sun Mar 17 19:47:08 2019 +0800
    
        mv one.txt to one.md
    
    commit b989dc26fa089d76de381ace2e360d69ab60e9ea
    Author: dongdong.wu <withwudongdong@gmail.com>
    Date:   Sun Mar 17 14:49:31 2019 +0800
    
        add four files
    

git rm 命令简单介绍

git reset 命令简单介绍

git branch 命令简单介绍

一般用于分支的操作,比如创建分支,查看分支等等。

因为现有项目还未有分支用我当前项目下来展示一下。

 2. Git checkout

    1. 操作文件  2. 操作分支

    2.1 操作文件

      2.1.1 git checkout filename 放弃单个文件的修改

      2.1.2 git checkout . 放弃当前目录下的修改

    2.2 操作分支

      2.2.1 git checkout master 将分支切换到master

      2.2.2 git checkout -b master 如果分支存在则只切换分支,若不存在则创建并切换到master分支,repo start是对git checkout -b这个命令的封装,将所有仓库的分支都切换到master,master是分支名,

    2.3 查看帮助

      git checkout --help

      当然git checkout还有许多命令,但这些已经能满足我们日常开发所需
上一篇 下一篇

猜你喜欢

热点阅读