Home

Git分支模型及工作流

分支模型 典型分支模型 A successful Git branching model 主分支 主分支有两种:master分支和develop分支 master master分支只负责管理发布的状态。在提交时使用标签记录发布版本号。 develop develop分支是针对发布的日常开发分支。刚才我们已经讲解过有合并分支的功用。 特性分支 特性分支就是我们在前面讲解过的topic分支的功用。 这个分支是针对新功能的开发,在bug修正的时候从develop分支分叉出来的。基本上不需要共享特性分支的操作,所以不需要远端控制。完成开发后,把分支合并回develop分支后发布。 release分支 rel...

Read more

Git远程仓库

远程仓库的基本操作 git clone <url> 克隆仓库 克隆后默认把远程仓库的名字改为origin,且本地分支默认跟踪对应的远程分支 git remote 查看远程仓库名称列表 git remote -v 查看带上URL的远程仓库信息 git remote show <remote> 查看remote远程仓库的详细信息 git remote add <remote> <url> 增加远程仓库 git remote rename <old-remote-name> <new-remote-name> 重命名远程仓库 git remote rm <remote> ...

Read more

Git分支

分支基础 在不同的分支可以同时进行不同的任务,互相不干扰,任务完成后再合并 分支本质上只是一个指向commit object的一个指针 分支指针一定是指向当前分支最新的commit object 当前处于哪一个分支是由HEAD指针指向哪一个分支指针决定的 新建分支 git branch <branch> 创建名为branch的分支 新建testing分支后示意图(未示意HEAD指针和tag) 切换分支 切换分支后,工作区和暂存区的状态会转换为该分支的最后提交的代码状态 git switch <branch> 或 git checkout <branch> 切换到名为branch的分支 git sw...

Read more

Git基础操作

获取帮助 git help <command> 获取名为command命令的帮助文档 配置 配置的级别 使用 git config 命令修改配置,等价于直接修改config文件 git config <key> <value> 或 git config --local <key> <value> 仓库级配置,修改的是当前使用仓库的 Git 目录中的 config 文件(就是.git/config) git config --global <key> <value> 当前用户级设置 修改的是~/.gitconfig 或 ~/.config/git/config文件(e.g...

Read more

Git数据结构

数据形式 直接记录快照,而非差异比较 CVS、SVN等 Git 数据结构 Git object Git仓库提交历史部分是由commit object链表组成的 commit object、tree object、blob object commit object代表一次提交 tree object代表一个目录 blob object代表一个文件快照 object的key(或id)是一个SHA-1校验和,通过SHA-1哈希算法生成 一个commit object的示意图,只有一个根目录,三个文件 commit object链表示意图(tree object 与 blob object 简化为snapshot) ...

Read more

Git背景介绍

关于版本控制历史 本地版本控制 许多人习惯用复制整个项目目录的方式来保存不同的版本,或许还会改名加上备份时间以示区别。这么做唯一的好处就是简单,但是特别容易犯错。有时候会混淆所在的工作目录,一不小心会写错文件或者覆盖意想外的文件。 为了解决这个问题,人们很久以前就开发了许多种本地版本控制系统,大多都是采用某种简单的数据库来记录文件的历次更新差异。 集中化的版本控制系统 接下来人们又遇到一个问题,如何让在不同系统上的开发者协同工作? 于是,集中化的版本控制系统(Centralized Version Control Systems,简称 CVCS)应运而生。 这类系统,诸如 CVS、Subversion 以及Perforce 等,都有一个单一的集中管理的服务...

Read more

CSS修改自动填充样式

一般方法 -webkit-box-shadow 修改背景颜色,-webkit-text-fill-color修改字体颜色 input:-webkit-autofill { -webkit-box-shadow:0 0 0 100px #22272e inset !important; -webkit-text-fill-color: #adbac7; } 背景颜色透明 input:-webkit-autofill { transition: background-color 5000s ease-in-out 0s; } 其他相关选择器 input:-webkit-autofill:hover input:-webkit-autofil...

Read more

CSS修改placeholder样式

一般方法 input::placeholder { color: red; } textarea::placeholder { color: red; } 兼容浏览器 Chrome内核 input::-webkit-input-placeholder { color: red; } Firefox 4~18 input::-moz-placeholder { color: red; } Firefox 19+ input::-moz-placeholder { color: red; } IE 10+ input::-ms-input-placeholder { color: red; }

Read more

JUnit5使用

代码实例 Maven依赖 <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-api</artifactId> <version>5.5.2</version> <scope>test</scope> <dependency> 测试对象 package com.test; public class Calculator { private int sum(int a, int b) { reutrn a...

Read more

Git使用SSH与远端连接

检查本机是否存在密钥 打开Git Bash ls -al ~/.ssh 看看是否存在类似id_rsa.pub的密钥文件。如有,可直接使用该密钥,否则,生成一个新的密钥 生成一个新的密钥 打开Git Bash ssh-keygen -t ed25519 -C "your_email@example.com" 默认配置在~/.ssh目录下生成了私钥id_ed25519文件和公钥id_ed25519.pub文件 指定密钥名称 ssh-keygen -t ed25519 -C "your_email@example.com" -f name 添加私钥到ssh-agent 启动ssh-agent eval "$(ssh-agent -s)" 添加私钥 ssh-...

Read more