diff --git a/docs/notes/Git.md b/docs/notes/Git.md index ca098929..0bc25a10 100644 --- a/docs/notes/Git.md +++ b/docs/notes/Git.md @@ -18,7 +18,7 @@ Git 属于分布式版本控制系统,而 SVN 属于集中式。 -

+

集中式版本控制只有中心服务器拥有一份代码,而分布式版本控制每个人的电脑上就有一份完整的代码。 @@ -40,45 +40,45 @@ Github 就是一个中心服务器。 Git 的版本库有一个称为 Stage 的暂存区以及最后的 History 版本库,History 中存有所有分支,使用一个 HEAD 指针指向当前分支。 -

+

- git add files 把文件的修改添加到暂存区 - git commit 把暂存区的修改提交到当前分支,提交之后暂存区就被清空了 - git reset -- files 使用当前分支上的修改覆盖暂存区,用来撤销最后一次 git add files - git checkout -- files 使用暂存区的修改覆盖工作目录,用来撤销本地修改 -

+

可以跳过暂存区域直接从分支中取出修改,或者直接提交修改到分支中。 - git commit -a 直接把所有文件的修改添加到暂存区然后执行提交 - git checkout HEAD -- files 取出最后一次修改,可以用来进行回滚操作 -

+

# 分支实现 使用指针将每个提交连接成一条时间线,HEAD 指针指向当前分支指针。 -

+

新建分支是新建一个指针指向时间线的最后一个节点,并让 HEAD 指针指向新分支表示新分支成为当前分支。 -

+

每次提交只会让当前分支指针向前移动,而其它分支指针不会移动。 -

+

合并分支也只需要改变指针即可。 -

+

# 冲突 当两个分支都对同一个文件的同一行进行了修改,在分支合并时就会产生冲突。 -

+

Git 会使用 <<<<<<< ,======= ,>>>>>>> 标记出不同分支的内容,只需要把不同分支中冲突部分修改成一样就能解决冲突。 @@ -100,7 +100,7 @@ Creating a new branch is quick AND simple. $ git merge --no-ff -m "merge with no-ff" dev ``` -

+

# 分支管理策略 diff --git a/docs/notes/正则表达式.md b/docs/notes/正则表达式.md index fc580d5d..ded641a4 100644 --- a/docs/notes/正则表达式.md +++ b/docs/notes/正则表达式.md @@ -80,7 +80,7 @@ abc[^0-9] \r\n 是 Windows 中的文本行结束标签,在 Unix/Linux 则是 \n。 -\r\n\r\n 可以匹配 Windows 下的空白行,因为它将匹配两个连续的行尾标签,而这正是两条记录之间的空白行; +\r\n\r\n 可以匹配 Windows 下的空白行,因为它匹配两个连续的行尾标签,而这正是两条记录之间的空白行; ## 匹配特定的字符类别 @@ -133,7 +133,7 @@ abc[^0-9] - **{m, n}** 匹配 m\~n 个字符 - **{m,}** 至少匹配 m 个字符 -\* 和 + 都是贪婪型元字符,会匹配最多的内容。在后面加 ? 可以转换为懒惰型元字符,例如 \*?、+? 和 {m, n}? 。 +\* 和 + 都是贪婪型元字符,会匹配尽可能多的内容。在后面加 ? 可以转换为懒惰型元字符,例如 \*?、+? 和 {m, n}? 。 **正则表达式** diff --git a/docs/pics/c3212a02-d010-4e62-834b-5dd26dfb5692.jpg b/docs/pics/c3212a02-d010-4e62-834b-5dd26dfb5692.jpg new file mode 100644 index 00000000..51bc514c Binary files /dev/null and b/docs/pics/c3212a02-d010-4e62-834b-5dd26dfb5692.jpg differ diff --git a/docs/pics/d95d04b7-896b-4bba-bb43-1a029ef14032.png b/docs/pics/d95d04b7-896b-4bba-bb43-1a029ef14032.png new file mode 100644 index 00000000..9c56b634 Binary files /dev/null and b/docs/pics/d95d04b7-896b-4bba-bb43-1a029ef14032.png differ