# Test **Repository Path**: qxsy/test ## Basic Information - **Project Name**: Test - **Description**: No description available - **Primary Language**: C# - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-10-05 - **Last Updated**: 2026-02-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #Gitflow 说明 #####GitFlow 协同工作流 其实GitFlow并非什么技术,而是一种代码开发合并管理流程的思维模式或者是管理方法。大家一起开发的一种软约定。 ####GitFlow的由来 我们为什么需要GitFlow这种git管理流程?原因有以下几点 - 有一个稳定版本的代码分支,可以安心的用在线上发布。 - 在代码提测前或者说是代码达到预发状态时,在测试交付的过程中程序员们还可以继续进行下一个版本的开发工作(挤出每一秒去开发-_-’’)。 - 有个一个分支可以让我们及时的对线上的bug进行修复,这个过程中我们不希望将正在开发中的代码提交到线上生产中去。 由于上述开发过程中面临的需求,GitFlow协同国祚流应运而生。对应的点就是 1. 代码共享 2. 不同环境下代码互不干扰 3. 管理好代码与环境的一致性 #Gitflow 分支详解 比如我很喜欢的git stash命令,可以把当前没有完成的事先暂存一下,然后去忙别的事。git cherry-pick命令可以让你有选择地合并提交。git add -p可以让你挑选改动提交,git grep $regexp $(git rev-list --all)可以用来在所有的提交中找代码。因为都是本地操作,所以你会觉得速度飞快。 除此之外,由 Git 衍生出来的 GitHub/GitLab 可以帮你很好地管理编程工作,比如 wiki、fork、pull、request、issue……集成了与编程相关的工作,让人觉得这不是一个冷冰冰的工具,而真正和我们的日常工作发生了很好的交互。 GitHub/GitLab 这样工具的出现,让我们的工作可以呈现在一个工作平台上,并以此来规范整个团队的工作,这才正是 Git 这个版本管理工具成功的原因。 ![](images/20210402174827663.png) ###中心式协同工作流 首先,我们先说明一下,Git 是可以像 SVN 这样的中心工作流一样工作的。我相信很多程序员都是在采用这样的工作方式。 这个过程一般是下面这个样子的。 1. 从服务器上做git pull origin master把代码同步下来。 2. 改完后,git commit到本地仓库中。 3. 然后git push origin master到远程仓库中,这样其他同学就可以得到你的代码了。 如果在第 3 步发现 push 失败,因为别人已经提交了,那么你需要先把服务器上的代码给 pull 下来,为了避免有 merge 动作,你可以使用 git pull --rebase。这样就可以把服务器上的提交直接合并到你的代码中,对此,Git 的操作是这样的。 1. 先把你本地提交的代码放到一边。 2. 然后把服务器上的改动下载下来。 3. 然后在本地把你之前的改动再重新一个一个地做 commit,直到全部成功。 如下图所示。Git 会把 Origin/Master 的远程分支下载下来(紫色的),然后把本地的 Master 分支上的改动一个一个地提交上去(蓝色的)。 ![图二](images/28847496cb6d4c76a127ec18ec0aa414.png) 如果有冲突,那么你要先解决冲突,然后做 git rebase --continue 。如下图所示,git 在做 pull --rebase时,会一个一个地应用(apply)本地提交的代码,如果有冲突就会停下来,等你解决冲突。 ![](images/037c6326070c45fab72a460c317529e8.png) # Markdown All in One说明文档 ```sequence {theme="hand"} Title: Here is a title Andrew->China: Says Hello Note right of China: China thinks\naboutit China-->Andrew:How are you? Andrew->>China: I am good thinks! ``` ```mermaid graph LR A-->B; B-->C; C-->A; ``` #什么是 Markdown? Markdown 是一种文本格式。你可以用它来控制文档的显示。使用 markdown,你可以创建粗体的文字,斜体的文字,添加图片,并且创建列表 等等。基本上来讲,Markdown 就是普通的文字加上 # 或者 * 等符号。 # 这是 `

` 一级标题 ## 这是 `

` 二级标题 ### 这是 `

` 三级标题 #### 这是 `

` 四级标题 ##### 这是 `

` 五级标题 ###### 这是 `
` 六级标题 ####如果你想要给你的标题添加 id 或者 class,请在标题最后添加 {#id .class1 .class2}。例如: # 这个标题拥有 1 个 id {#my_id} # 这个标题有 2 个 classes {.class1 .class2} *这会是 斜体 的文字* _这会是 斜体 的文字_ **这会是 粗体 的文字** __这会是 粗体 的文字__ _你也 **组合** 这些符号_ ~~这个文字将会被横线删除~~ ####列表 无序列表 - Item 1 - Item 2 - Item 2a - Item 2b - #####有序列表 1. Item 1 1. Item 2 1. Item 3 1. Item 3a 1. Item 3b #####添加图片 ![GitHub Logo](/images/IMG_20170723_190248.jpg) Format: ![Alt Text](/images/862767639511639975.jpg) #####引用 正如 Kanye West 所说: > We're living the future so > the present is our past. #####分割线 如下,三个或者更多的 --- 连字符 --- 星号 --- 下划线 ####行内代码 我觉得你应该在这里使用 `` 才对。 ####代码块 你可以在你的代码上面和下面添加 ``` 来表示代码块。 ####语法高亮 你可以给你的代码块添加任何一种语言的语法高亮 例如,给 ruby 代码添加语法高亮: ```ruby require 'redcarpet' markdown = Redcarpet.new("Hello World!") puts markdown.to_html ``` ####代码块 class(MPE 扩展的特性) 你可以给你的代码块设置 class。 例如,添加 class1 class2 到一个 代码块: ```javascript {.class1 .class} function add(x, y) { return x + y } ``` ####代码行数 如果你想要你的代码块显示代码行数,只要添加 line-numbers class 就可以了。 例如: ```javascript {.line-numbers} function add(x, y) { return x + y } ``` ####高亮代码行数 你可以通过添加 highlight 属性的方式来高亮代码行数: ```javascript {highlight=10} ``` ```javascript {highlight=10-20} ``` ```javascript {highlight=[1-10,15,20-22]} ``` ####任务列表 - [x] @mentions, #refs, [links](), **formatting**, and tags supported - [x] list syntax required (any unordered or ordered list supported) - [x] this is a complete item - [ ] this is an incomplete item