git 忽略文件夹_git 工作流程

git 工作流程

cc7e50ad2149d6662a5847d22af644d7.png

前一节我们给大家讲了 git 的简介,发展历史,以及如何在不同的系统上安装git。本节主要介绍 git 的工作流程,主要包括工作目录 working directory,暂存区 staging area,本地/远程仓库 repository。在 git 仓库的文件都会经过从工作目录开始,到暂存区,再到本地仓库,最后提交到远程仓库。下面将为大家一一讲解。

Tips:
  1. 首先进入一个目录,如果当前目录没有建立 git 仓库,可以直接运行 git init 初始化这个目录。
  2. 如果当前目录是从 github 或者其他地方通过 git clone 方式克隆下来的话就不需要初始化。

1. git 工作目录

工作目录就是当前你正在编辑的环境,同时里面的编辑修改也是 git 没有追踪的区域。在工作目录的所有的修改,都可以通过 git status 命令查看到。

c20937a3b09084479868862d8624f4b8.png
Tips: 如上截图,有一个 readme.md 文件在工作目录还没被追踪。

如果有一些文件不想被追踪的话,可以新建一个 .gitignore 文件,把所有你想被 git 忽略的文件和文件夹追加进去,git 会自动帮你忽略。

$ echo  "readme.md" > .gitignore
$ git status
On branch master

No commits yet

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

nothing added to commit but untracked files present (use "git add" to track)
当把 readme.md 这个文件名加入到 .gitignore 以后,git 系统就不会再提示你追踪这个文件了。

2. git 暂存区

git 暂存区是用来追踪和保存文件的修改。这些修改最后会保存到 .git 目录里。但是我们需要手动显式地添加文件到暂存区里面。

通过 git add 文件名/文件夹 将文件或者文件夹添加到 git 的暂存区。以上述例子为例,我们需要将 .gitignore 添加到暂存区里。然后可以通过 git status 查看这个文件的状态。

$ git add .gitignore
$ git status
On branch master

No commits yet

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)
        new file:   .gitignore
Tips:
  1. 如果想回退这个操作,可以执行 git rm --cached .gitignore ,这个文件就会从暂存区移除,重新回到工作目录。
  2. 如果想将当前目录下的所有文件加入暂存区,可以执行 git add .

3. git 本地仓库

git 本地仓库会将你所有在暂存区的修改保存到 .git 目录里,最终你会看到的是本地仓库里的提交 commit。

首先可以通过 git commit命令将文件保存到本地仓库,并记录提交信息。这个命令会通过 Vim 打开一个编辑器让你编写 commit log。

$ git commit 

# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# On branch master
#
# Initial commit
#
# Changes to be committed:
#       new file:   .gitignore
#
docs: add readme
Tips:
  1. 然后按 ctrl + X,选择 Yes,成功保存。
  2. 或者可以通过 commit -m "docs: add readme"来直接保存这个提交,不用打开 Vim 编辑。
  3. commit log 建议遵循以下约定(点击这里看更多):
  4. feat: (对于用户而言新增了功能,而不是在构建脚本添加了新功能)
  5. fix: (对于用户而言修复了缺陷,而不是修复了构建脚本的缺陷)
  6. docs: (对于文档的修改)
  7. style: (格式化代码,添加注释等等,没有对生产代码的改动)
  8. refactor: (重构生产代码,譬如:变量重命名,提取方法)
  9. test: (添加缺失的测试用例,重构测试用例,无生产代码更改)
  10. chore: (更新构建脚本等等, 无生产代码更改)

如果 commit 了以后,暂存区就会清空了。可以通过以下命令查看本地仓库的文件。

$ git ls-tree --full-tree -r HEAD
100644 blob cdb5f04f10c21998fd7406f7e8ceafd2035d83e2    .gitignore

可以通过 git log 查看 commit log,并进一步看这个 commit 修改了什么文件。

$ git log
commit ed11ea93b9bc6361052dd31bbe330e023cbf23ad (HEAD -> master)
Author: faith <faith@mooc.com>
Date:   Fri Aug 7 13:06:57 2020 -0400

    docs: add readme
$ git show ed11ea93
commit ed11ea93b9bc6361052dd31bbe330e023cbf23ad (HEAD -> master)
Author: faith <faith@mooc.com>
Date:   Fri Aug 7 13:06:57 2020 -0400

    docs: add readme

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..cdb5f04
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+readme.md
Tips: git show 提交编号。这个编号可以通过 git log查看 commit 后复制前几位即可。

通过 git diff显示所有工作区和暂存区的文件的差异。如果你只想对比一个文件的差异可以用 git diff 文件名,或者用 git diff --staged只对比暂存区的差异。

## 4. git 远程仓库

在提交到本地仓库后,可以用 git push 推送到远程仓库。

  1. 在 github 创建一个仓库。
  2. 通过 git remote add 命令添加 remote URL。

$ git remote add origin git@github.com:iamfaith/git_wiki.git

  1. 通过 git push -u origin master ,将本地仓库推送到远程目录
Tips: 如果想查看当前仓库的远程分支的 URL,可以通过 git remote -v 查看远程 URL

3.小结

本节课程我们主要学习了 git 的工作目录,暂存区,本地仓库以及远程仓库。学完本节后,应该掌握上述常见命令,可以完成创建 git 目录,并将本地的文件推送到远程仓库。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值