From 2008110373b300daf7abc69ba1ef0a5857eaea97 Mon Sep 17 00:00:00 2001 From: Alpha2J <3287566354@qq.com> Date: Thu, 17 Jan 2019 22:28:45 +0800 Subject: [PATCH 001/154] =?UTF-8?q?=E6=9B=B4=E6=AD=A3=E6=88=90=E5=91=98?= =?UTF-8?q?=E5=86=85=E9=83=A8=E7=B1=BBstatic=E6=96=B9=E6=B3=95=E5=92=8C?= =?UTF-8?q?=E5=9F=9F=E7=9A=84=E6=8F=8F=E8=BF=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "notes/JavaArchitecture/01-Java\345\237\272\347\241\200.md" | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git "a/notes/JavaArchitecture/01-Java\345\237\272\347\241\200.md" "b/notes/JavaArchitecture/01-Java\345\237\272\347\241\200.md" index 8b32a444..03199f62 100644 --- "a/notes/JavaArchitecture/01-Java\345\237\272\347\241\200.md" +++ "b/notes/JavaArchitecture/01-Java\345\237\272\347\241\200.md" @@ -829,7 +829,7 @@ outerClass... 在成员内部类中要注意两点: -- 成员内部类中不能存在任何 static 的变量和方法; +- 成员内部类中不能存在`static`方法, 但是可以存在`static`域, 前提是需要使用`final`关键字进行修饰. - 成员内部类是依附于外围类的,所以只有先创建了外围类才能够创建内部类。 From 967bf76891fa64fe05766faa772824d929877036 Mon Sep 17 00:00:00 2001 From: frank-lam <1002039945@qq.com> Date: Fri, 18 Jan 2019 21:35:44 +0800 Subject: [PATCH 002/154] auto commit --- README.md | 6 +++++- assets/mind/fullstack tutorial.xmind | Bin 0 -> 399018 bytes notes/Docker.md | 5 ++++- notes/git-tutorial.md | 15 +++++++++++++++ ...202\350\200\203\350\265\204\346\226\231.md" | 5 ++++- 5 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 assets/mind/fullstack tutorial.xmind create mode 100644 notes/git-tutorial.md diff --git a/README.md b/README.md index 637cf3f1..15720e37 100644 --- a/README.md +++ b/README.md @@ -234,6 +234,10 @@ 微服务简介、API 网关、服务注册发现、服务通信 +- 分布式锁 + + 基于 Redis、MySQL、Zookeeper 的分布式锁实现 + - FastDFS 轻量级分布式文件管理系统 @@ -317,7 +321,7 @@ ## 十、工具 -- [Git](notes/Git.md) +- [Git](notes/git-tutorial.md) 基本概念,常见命令,速查表 diff --git a/assets/mind/fullstack tutorial.xmind b/assets/mind/fullstack tutorial.xmind new file mode 100644 index 0000000000000000000000000000000000000000..91fb64dcf639f984471f5acf4003214a5a340d9d GIT binary patch literal 399018 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 bofZ28dw@49@FW)o26Z3|0`{<-*g;$X7CB=& literal 0 HcmV?d00001 diff --git a/notes/Docker.md b/notes/Docker.md index e23e01ce..1fa12ee6 100644 --- a/notes/Docker.md +++ b/notes/Docker.md @@ -75,7 +75,10 @@ Docker 容器化引擎,更详细请转向:[Docker_Tutorial: Docker 容器化引擎入门手册](https://github.com/frank-lam/Docker_Tutorial) -> 本文内容均来自:【千锋-李卫民老师博客,推荐大家学习】http://www.funtl.com/ +> 参考资料: +> +> - http://www.funtl.com/ +> - [Docker —— 从入门到实践](https://yeasy.gitbooks.io/docker_practice/content/) > > 基于以上部分内容做一定的修改 diff --git a/notes/git-tutorial.md b/notes/git-tutorial.md new file mode 100644 index 00000000..b3cc59a8 --- /dev/null +++ b/notes/git-tutorial.md @@ -0,0 +1,15 @@ +# Git Tutorial + +这里 Git 学习指引,包含如下几个模块,将用最极简的语言带你进入 Git 版本控制的世界。 + +| 📖 | 📝 | 💿 | 🌟 | +| :--------------------: | :----------: | :----------: | :------------------------: | +| [Git 基础知识](Git.md) | Git 应用场景 | Git 命令速查 | [Git 工作流](Git工作流.md) | + + + +## 参考资料 + +- [极客时间苏玲老师的《玩转Git三剑客》笔记](aimuch/iPlayGit: 这是极客时间苏玲老师的《玩转Git三剑客》笔记) +- [git使用 · lzy的Bbbblog](https://o0chivas0o.github.io/2018/12/21/git/) + diff --git "a/others/reference/\345\217\202\350\200\203\350\265\204\346\226\231.md" "b/others/reference/\345\217\202\350\200\203\350\265\204\346\226\231.md" index e9adb9da..ca5c701e 100644 --- "a/others/reference/\345\217\202\350\200\203\350\265\204\346\226\231.md" +++ "b/others/reference/\345\217\202\350\200\203\350\265\204\346\226\231.md" @@ -27,4 +27,7 @@ [Snailclimb/Java_Guide: Java面试通关手册(Java学习指南)](https://github.com/Snailclimb/Java_Guide) `star:94` Introduction · 笔试面试知识整理 -https://hit-alibaba.github.io/interview/index.html \ No newline at end of file +https://hit-alibaba.github.io/interview/index.html + +[justjavac/free-programming-books-zh_CN: 免费的计算机编程类中文书籍,欢迎投稿](https://github.com/justjavac/free-programming-books-zh_CN) + From fd3797c77179ddf09da758cbe15faddd07b99d04 Mon Sep 17 00:00:00 2001 From: frank-lam <1002039945@qq.com> Date: Fri, 18 Jan 2019 22:26:21 +0800 Subject: [PATCH 003/154] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20Git=20=E5=91=BD?= =?UTF-8?q?=E4=BB=A4=E9=80=9F=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...75\344\273\244\351\200\237\346\237\245.md" | 437 ++++++++++++++++++ notes/git-tutorial.md | 11 +- 2 files changed, 444 insertions(+), 4 deletions(-) create mode 100644 "notes/Git\345\221\275\344\273\244\351\200\237\346\237\245.md" diff --git "a/notes/Git\345\221\275\344\273\244\351\200\237\346\237\245.md" "b/notes/Git\345\221\275\344\273\244\351\200\237\346\237\245.md" new file mode 100644 index 00000000..eddac09b --- /dev/null +++ "b/notes/Git\345\221\275\344\273\244\351\200\237\346\237\245.md" @@ -0,0 +1,437 @@ +# Git 命令速查 + +> 本文参考极客时间苏玲老师的《玩转Git三剑客》 + + + +## 添加配置 +```bash +git config [--local | --global | --system] user.name 'Your name' +git config [--local | --global | --system] user.email 'Your email' +``` + + + + + +## 查看配置 + +```bash +git config --list [--local | --global | --system] +``` +### 区别 +```bash +local:区域为本仓库 +global: 当前用户的所有仓库 +system: 本系统的所有用户 +``` + + +## `git add .` 和 `git add -u`区别 + +```bash +git add . :将工作空间新增和被修改的文件添加的暂存区 +git add -u :将工作空间被修改和被删除的文件添加到暂存区(不包含没有纳入Git管理的新增文件) +``` + + + +## 创建仓库 + +```bash +git init [project folder name] 初始化 git 仓库 +git add [fileName] 把文件从工作目录添加到暂存区 +git commit -m'some information' 用于提交暂存区的文件 +git commit -am'Some information' 用于提交跟踪过的文件 +git log 查看历史 +git status 查看状态 +``` + +**额外** +git add -u 可以添加所有已经被 git 控制的文件到暂存区 +以前删除文件夹只会用 「-rf」,今天学到了 「-r」,并得知它们两个区别:「-r」 有时候会提示是否确认删除。 + + + +## 给文件重命名的简便方法 + +```bash +git mv [old file name] [new file name] +git commit -m 'some information' +``` + + + +## 通过`git log`查看版本演变历史 + +```bash +git log --all 查看所有分支的历史 +git log --all --graph 查看图形化的 log 地址 +git log --oneline 查看单行的简洁历史。 +git log --oneline -n4 查看最近的4条简洁历史。 +git log --oneline --all -n4 --graph 查看所有分支最近4条单行的图形化历史。 +git help --web log 跳转到git log 的帮助文档网页 +``` + +```bash +git branch -v 查看本地有多少分支 +``` + + + +## 通过图形界面工具来查看版本历史 + +```bash +gitk +``` + + + +## 探密`.git`目录 + +查看`.git`文件夹下的内容: +```bash +ls .git/ -al +``` +如下: +```shell +drwxr-xr-x 1 Andy 197609 0 12月 17 22:38 ./ +drwxr-xr-x 1 Andy 197609 0 12月 17 21:50 ../ +-rw-r--r-- 1 Andy 197609 7 12月 17 22:38 COMMIT_EDITMSG +-rw-r--r-- 1 Andy 197609 301 12月 12 22:55 config +-rw-r--r-- 1 Andy 197609 73 12月 12 22:55 description +-rw-r--r-- 1 Andy 197609 96 12月 19 00:00 FETCH_HEAD +-rw-r--r-- 1 Andy 197609 23 12月 12 22:55 HEAD +drwxr-xr-x 1 Andy 197609 0 12月 12 22:55 hooks/ +-rw-r--r-- 1 Andy 197609 249 12月 17 22:38 index +drwxr-xr-x 1 Andy 197609 0 12月 12 22:55 info/ +drwxr-xr-x 1 Andy 197609 0 12月 12 22:55 logs/ +drwxr-xr-x 1 Andy 197609 0 12月 17 22:38 objects/ +-rw-r--r-- 1 Andy 197609 114 12月 12 22:55 packed-refs +drwxr-xr-x 1 Andy 197609 0 12月 12 22:55 refs/ +``` + +```bash +cat命令主要用来查看文件内容,创建文件,文件合并,追加文件内容等功能。 +cat HEAD 查看HEAD文件的内容 +git cat-file 命令 显示版本库对象的内容、类型及大小信息。 +git cat-file -t b44dd71d62a5a8ed3 显示版本库对象的类型 +git cat-file -s b44dd71d62a5a8ed3 显示版本库对象的大小 +git cat-file -p b44dd71d62a5a8ed3 显示版本库对象的内容 +``` + +`.git`里几个常用的如下: +```bash +HEAD:指向当前的工作路径 +config:存放本地仓库(local)相关的配置信息。 +refs/heads: 存放分支 +refs/heads/master/: 指向master分支最后一次commit +refs/tags: 存放tag,又叫里程牌 (当这次commit是具有里程碑意义的 比如项目1.0的时候 就可以打tag) +objects:核心文件,存储文件 +``` +.git/objects/ 存放所有的 git 对象,对象哈希值前 2 位作为文件夹名称,后 38 位作为对象文件名, 可通过 git cat-file -p 命令,拼接文件夹名称+文件名查看。 + +## `commit`、`tree`和`blob`三个对象之间的关系 +![tree](./images/img1.jpg) + +```bash +commit: 提交时的镜像 +tree: 文件夹 +blob: 文件 +``` + +**【同学问题】** 每次commit,git 都会将当前项目的所有文件夹及文件快照保存到objects目录,如果项目文件比较大,不断迭代,commit无数次后,objects目录中文件大小是不是会变得无限大? +**【老师解答】** Git对于内容相同的文件只会存一个blob,不同的commit的区别是commit、tree和有差异的blob,多数未变更的文件对应的blob都是相同的,这么设计对于版本管理系统来说可以省很多存储空间。其次,Git还有增量存储的机制,我估计是对于差异很小的blob设计的吧。 + + + +## `分离头指针`情况下的注意事项 + +detached HEAD + + + +## 进一步理解`HEAD`和`branch` + +```bash +git checkout -b new_branch [具体分支 或 commit] 创建新分支并切换到新分支 +git diff HEAD HEAD~1 比较最近两次提交 +git diff HEAD HEAD~2 比较最近和倒数第三次提交 +git diff HEAD HEAD^ 比较最近两次提交 +git diff HEAD HEAD^^ 比较最近和倒数第三次提交 +``` + + + +## 怎么删除不需要的分支? + +查看分支: +```bash +git branch -av +``` +删除分支命令: +```bash +git branch -d [branch name] 删除 +git branch -D [branch name] 强制删除 +``` + + + +## 怎么修改最新 commit 的 message? + +```bash +git commit --amend 对最近一次的commit信息进行修改 +``` + + + +## 怎么修改老旧 commit 的 message? + +```bash +git rebase -i [要更改的commit的上一级commit] +``` +接下来就是一个交互过程... +这期间会产生一个detached HEAD,然后将改好的commit指向该detached HEAD,如下图所示: +![rebase](./images/img2.jpg) + +**git rebase工作的过程中,就是用了分离头指针。rebase意味着基于新base的commit来变更部分commits。它处理的时候,把HEAD指向base的commit,此时如果该commit没有对应branch,就处于分离头指针的状态,然后重新一个一个生成新的commit,当rebase创建完最后一个commit后,结束分离头状态,Git让变完基的分支名指向HEAD。** + + + +## 怎样把连续的多个commit整理成1个? + +```bash +git rebase -i [要更改的commit的上一级commit] +``` +```bash +$ git log --graph +* commit 7d3386842a2168ae630b65f687364243139c893c (HEAD -> master, origin/master, origin/HEAD) +| Author: aimuch +| Date: Thu Dec 20 23:34:18 2018 +0800 +| +| update +| +* commit 9eb3188bbc63cae1bfed5f9dfc1593019e360a6a +| Author: aimuch +| Date: Wed Dec 19 20:30:14 2018 +0800 +| +| update +| +* commit bbe6d53e2b477f2d2aa402af7f315ecdfc63459e +| Author: aimuch +| Date: Wed Dec 19 20:12:29 2018 +0800 +| +| update +| +* commit 7735d66ded7f98adeca93d96fb7be12ffb67c76a +| Author: aimuch +| Date: Wed Dec 19 00:27:00 2018 +0800 +| +| update +| +* commit d9f9d115fab425b5654f8ccfec6a996aef35b76b +| Author: aimuch +| Date: Wed Dec 19 00:23:36 2018 +0800 +| +| update + +``` +```bash +pick 7735d66 update #合并到该commit上 +squash bbe6d53 update +squash 9eb3188 update +squash 7d33868 update +# Rebase d9f9d11..7d33868 onto d9f9d11 (4 commands) +# +# Commands: +# p, pick = use commit +# r, reword = use commit, but edit the commit message +# e, edit = use commit, but stop for amending +# s, squash = use commit, but meld into previous commit +# f, fixup = like "squash", but discard this commit's log message +# x, exec = run command (the rest of the line) using shell +# b, break = stop here (continue rebase later with 'git rebase --continue') +# d, drop = remove commit +# l, label