Md2All
/*可任意修改样式,或恢复预设值,保存后生效
相对“默认样式”而作的修改会用 红色 标注 */
.output_wrapper/*此属性为全局 */
{
font-size: 16px;
color: #3e3e3e;
line-height: 1.6;
word-spacing:0px;
letter-spacing:0px;
font-family: "Helvetica Neue",Helvetica,"Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
}
.output_wrapper *
{
font-size: inherit ;
color: inherit;
line-height: inherit;
margin:0px;
padding:0px;
}
p {/*段落 */
margin: 1.5em 0px;
}
h1,h2,h3,h4,h5,h6 {
margin: 1.5em 0px;
font-weight:bold;
}
h1 {
font-size: 1.6em ;
}
h2 {
font-size: 1.4em;
}
h3 {
font-size: 1.3em;
}
h4 {
font-size: 1.2em;
}
h5 {
font-size: 1em;
}
h6 {
font-size: 1em;
}
h3
{/*增加对H3标题属性的修改 */
margin-bottom:2em;
margin-right: 5px;
padding: 8px 15px;
letter-spacing: 2px;
background-image: linear-gradient(to right bottom, rgb(0, 188, 212), rgb(63, 81, 181));
background-color: rgb(63, 81, 181);
color: rgb(255, 255, 255);
border-left: 10px solid rgb(51, 51, 51);
border-radius:5px;
text-shadow: rgb(102, 102, 102) 1px 1px 1px;
box-shadow: rgb(102, 102, 102) 1px 1px 2px;
}
ul, ol {
padding-left: 32px;
}
ul{ /*无序列表 */
list-style-type: disc;
}
ol { /*有序列表 */
list-style-type: decimal;
}
li *
{
/* color: #3e3e3e;*/
}
li{ /*在公众号下,改变不了li符号的属性(如颜色),并会影响其子元素的属性;而在其它博客平台中,则能正常使用 */
margin-bottom: 0.5em;
/* color:#159957; */
}
.code_size_default /*代码块默认size */
{
line-height: 18px;
font-size: 14px;
font-weight:normal;
word-spacing:0px;
letter-spacing:0px;
}
.code_size_tight /*代码块紧凑size */
{
line-height: 15px;
font-size: 11px;
font-weight:normal;
word-spacing:-3px;
letter-spacing:0px;
}
pre code /*代码块 */
{
font-family: Consolas, Inconsolata, Courier, monospace;
border-radius: 0px;
}
blockquote { /*引用块 */
display: block;
padding: 15px 1rem;
font-size: 0.9em;
padding-right: 15px;
margin: 1em 0;
color: #819198;
border-left: 6px solid #dce6f0;
background: #f2f7fb;
overflow: auto;
overflow-scrolling: touch;
word-wrap: normal;
word-break: normal;
}
blockquote p {
margin: 0px;
}
a { /*超链接 */
text-decoration: none;
color: #1e6bb8;
word-wrap:break-word;
}
strong /*强调 */
{
font-weight: bold;
}
em /*斜体 */
{
font-style:italic;
}
del /*删除线 */
{
font-style:italic;
}
strong em/*强调的斜体 */
{
font-weight: bold;
}
hr { /*分隔线 */
height: 1px;
margin: 1.5rem 0px;
border: none;
border-top: 1px dashed #A5A5A5;
}
code /*行内代码 */
{
word-wrap: break-word;
padding: 2px 4px;
border-radius: 4px;
margin:0 2px;
color:#e96900;
background:#f8f8f8;
}
img
{
display: block;
margin:0 auto; /*图片水平居中 */
/* margin:0 0; */ /*图片水平居左,如需要请打开 */
max-width:100%;
}
figcaption/*图片描述文字 */
{
margin-top:10px;
text-align:center;
/* text-align:left; */ /*当图片水平居左时,请打开 */
color:#999;
font-size: 0.7em;
}
/*================表格开始================ */
table
{
display:table;
width: 100% ;
text-align: left;
}
tbody {
border: 0;
}
table tr {
border: 0;
border-top: 1px solid #CCC;
background-color: white;
}
/*隔行改变行的背景色,如需要请打开 */
/*
table tr:nth-child(2n) {
background-color: #F8F8F8;
}
*/
table tr th, table tr td {
font-size: 1em;
border: 1px solid #CCC;
padding: 0.5em 1em;
text-align: left;
}
/*表头的属性 */
table tr th {
font-weight: bold;
background-color: #F0F0F0;
}
/*================表格结束================ */
/*================数学公式开始================ */
.katex-display {/*块公式 */
font-size:1.22em;
}
.katex
{/*行内公式 */
padding:8px 3px;
}
.katex-display > .katex
{/*块公式 */
display:inline-block;
text-align:center;
padding:3px;
}
.katex img
{/*行内公式对应的图片 */
display:inline-block;
vertical-align:middle;
}
/*================数学公式结束================ */
a[href^="#"] sup
{/*注脚 */
vertical-align:super;
margin:0 2px;
padding:1px 3px;
color: #ffffff;
background:#666666;
font-size:0.7em;
}
/*================任务列表开始================ */
.task-list-list {
list-style-type: none;
}
.task-list-list.checked {/*已完成 */
color: #3e3e3e;
}
.task-list-list.uncheck {/*未完成 */
color: #bfc1bf;
}
.task-list-list .icon_uncheck, .task-list-list .icon_check {
display: inline-block;
vertical-align: middle;
margin-right: 10px;
}
.task-list-list .icon_check:before
{/*已完成 */
content: "√";
border: 2px solid #3e3e3e;
color:red;
}
.task-list-list .icon_uncheck:before
{/*未完成 */
content: "x";
border: 2px solid #bfc1bf;
color: #bfc1bf;
}
.task-list-list .icon_check:before, .task-list-list .icon_uncheck:before
{/*标志框 */
padding:2px;
padding-left: 5px;
padding-right: 8px;
border-radius:5px;
}
/*================任务列表结束================ */
.toc
{/*总目录 */
margin-left:25px;
}
.toc_item
{/*每条目录 */
display:block;
}
.toc_left
{/*每级目录的缩进 */
margin-left:25px;
}
red
#FFEBEE #FFCDD2 #EF9A9A #E57373 #EF5350 #F44336 #E53935 #D32F2F #C62828 #B71C1C #FF8A80 #FF5252 #FF1744 #D50000
--- title: git常用命令 author: wuzhiyong top: false cover: false toc: true mathjax: false date: 2022-03-24 17:17:54 img: coverImg: password: summary: tags: categories: [git] --- ### config |命令|说明| |---|---| |`git init`|初始化 |`git config -l`|查看当前config配置 |`git config --global user.name "username"`|设置用户名 |`git config --global user.email "email@gmail.com"`|设置邮箱 ### 远程仓库 |命令|说明| |---|---| |`git clone [url]`|检出仓库 |`git remote -v`|查看远程仓库 |`git remote add [name] [url]`|添加远程仓库 |`git remote rm [name]`|删除远程仓库 |`git remote set-url origin [newUrl]`|修改远程仓库 |`git push -u -f origin`|仓库迁移 |`git push -u -f origin --all`|把所有分支迁移过去 |`git push -u -f origin --tags`|把所有tag迁移过去 |`git fetch`|下载远程仓库最新的commit到本地 |`git fetch --all`|下载远程仓库最新的commit到本地 |`git fetch origin --prune`|更新远程分支,`--prune`同`-p` |`git remote update origin --prune`|更新远程分支 ### 分支 |命令|说明| |---|---| |`git branch`|查看本地分支 |`git branch -r`|查看远程分支 |`git ls-remote --heads origin`|查看远程分支 |`git branch -a`|查看所有分支 |`git branch [name]`|创建本地分支,创建后不会自动切换 |`git checkout [name]`|切换分支 |`git checkout -b [name]`|创建分支并切换 |`git checkout [name] -f`|`--force`或者`-f`,强制切换分支,未提交的会被丢弃 |`git branch -d [name]`|删除分支,如果分支没有合并是不能被删除的 |`git branch -D [name]`|删除分支,没有合并也能被强制删除 |`git push origin [name]`|本地分支push到远程,远程没有该分支则自动创建 |`git push origin [local]:[name]`|本地分支push到远程 |`git push origin --delete [name]`|删除远程分支,`-d`也行 |`git push origin :heads/[name]`|删除远程分支 |`git push origin :[name]`|删除远程分支 ### 合并 |命令|说明| |---|---| |`git merge [name]`|将名称为[name]的分支与当前分支合并 |`git merge --no-ff [name]`|将名称为[name]的分支与当前分支合并,并保存之前的分支历史 |`git merge --abort`|合并产生冲突后,抛弃合并过程并且尝试重建合并前的状态 |`git rebase [name]`|将`name`分支合并到当前分支 |`git rebase [name1] [name2]`|将`name1`分支合并到`name2`分支,等同于先`git checkout name2`在执行`git rebase name1` |`git rebase [start] [end] --onto [name]`|从开始到结束复制到name分支,注意:`前开后闭` ### tag |命令|说明| |---|---| |`git tag`|查看本地tag |`git tag [name]`|创建轻量tag |`git tag -a [name] -m [message]`|创建附注tag,不带-m会提示你输入message |`git tag [name] [commitId]`|对历史commit创建tag |`git tag -l "[tag规则]"`|按规则查询tag,注意规则在双引号内,如`git tag -l "v2.*"` |`git push origin [name]`|推送tag到服务器 |`git push origin --tags`|推送所有tag到服务器 |`git tag -d [name]`|删除tag |`git push origin :refs/tags/[name]`|删除远程tag |`git show [name]`|查询tag具体信息 |`git pull --tags`|拉取远程仓库的标签 |`git push --tags`|推送标签到远程仓库 |`git ls-remote --tags origin`|查看远程仓库tag |`git checkout [tag]`|切换到tag的位置,默认不会创建新的分支 |`git checkout -b [name] [tag]`|创建新的分支并切换到tag的位置,`[name]`非必须 > 如果创建的不是轻量tag,推送到远程后用`git ls-remote --tags origin`命令查看会产生一个后缀为`^{}`的同名tag. ### switch |命令|说明| |---|---| |`git switch [name]`|切换分支,如果没有则报错,如果本地没有远程有则拉取 |`git switch -`|切换到上一个分支 |`git switch -c [name]`|创建并切换分支,如果有则报错 |`git switch -c [name] [commit]`|以一个提交来创建分支 |`git switch --detach [commit]`|切换到一个提交,不创建分支 |`git switch --orphan [name]`|创建一个没有任何提交记录的分支,内容为空 |`git switch -c [name] [tagName]`|以一个tag创建分支 ### 提交 |命令|说明| |---|---| |`git status`|查看当前分支状态 |`git status -sb`|简洁输出当前分支状态,`short branch` |`git show --stat`|查看当前状态 |`git commit [filename] -m [message]`|提交一个文件 |`git commit -am [message]`|提交所有文件 |`git add [filename]`|新增文件 |`git add .`|新增所有文件 |`git rm [filename]`|删除文件 ### 暂存区 |命令|说明| |---|---| |`git stash`|存到暂存区,如果有修改没有提交无法切换分支,可以先暂存 |`git stash list`|查看暂存区 |`git stash pop`|从暂存区取出,暂存区删除 |`git stash apply`|从暂存区取出,暂存区不删除 |`git stash clear`|删除所有缓存 ### 回退 |命令|说明| |---|---| |`git diff`|查看尚未暂存的更新 |`git clean [-n]`|显示当前目录下没有被add的文件 |`git clean [-f]`|删除当前目录下没有被add的文件 |`git reset --hard [commitid]`|回退到上一个commit,所有提交都被删除 |`git reset --hard origin/master`|强制更新本地内容,一般搭配`git fetch`命令一起使用 |`git reset --soft [commitid]`|回退到上一个commit,所有提交都保留 |`git reset --mixed [commitid]`|回退到上一个commit,所有提交都保留 > `git reset --soft`和`--mixed`区别在于如果当前commit和上一个commit之间有新增的文件,`--soft`回退之后该文件处于已add的状态,`--mixed`回退之后该文件处于未add的状态,需要在执行`git add`. ### 日志 |命令|说明| |---|---| |`git reflog`|查看所有分支所有日志,log的其它参数同样使用reflog |`git log`|查看当前分支所有日志 |`git log --pretty=oneline`|单行模式查看当前分支所有日志 |`git log -n 5`|查看前5条日志 |`git log --stat -n 5`|查看前5条日志,并简要显示增改行数 |`git log --since=2.days`|查看最近2天的日志 |`git log --grep=test`|查看关键字包含为`test`的日志 |`git log --author=Wuzhiyong`|查看指定作者的日志 |`git log --committer=Wuzhiyong`|查看指定作者的日志 |`git show [commitid]`|查看某次commit的修改 |`git log --graph --oneline --decorate --simplify-by-decoration --all`|查看分支图 |`git show-ref`|查看本地refs,添加`--tags`查看本地tag,`--heads`查看本地分支 ### 问题 - 配置公钥 ```bash # 生成公钥,过程中按3次回车 ssh-keygen -t ed25519 -C "xxxxx@xxxxx.com" # 进入gitee添加公钥 # 测试公钥是否能用 ssh -T git@gitee.com # 返回以下内容证明配置正确 Hi XXX! You've successfully authenticated, but Gitee.com does not provide shell access. ``` > 如果配置正确还是让输入用户密码,首先`git remote -v`检查远程地址是`https`还是`ssh`.使用`git remote set-url origin git@gitee.com:happywzy/xxxx.git`修改. - rebase操作 ```bash # 目标希望将fd75768和e87d4921两个连续的提交rebase到master分支 # 因为是前开后闭,这里start通过^向前指定了一个区间 # 也可以start设置为fd75768前一个commitid $ git rebase fd75768^ e87d4921 --onto master fatal: It seems that there is already a rebase-merge directory, and I wonder if you are in the middle of another rebase. If that is the case, please try git rebase (--continue | --abort | --skip) If that is not the case, please rm -fr ".git/rebase-merge" and run me again. I am stopping in case you still have something valuable there. # 上面提示已经存在一个rebase-merge目录,先删除了 $ rm -fr ".git/rebase-merge" # 再次执行 $ git rebase fd75768^ e87d4921 --onto master Successfully rebased and updated detached HEAD. # 切换到master分支,提示刚刚复制了两个提交,即HEAD后面还有两个提交 $ git checkout master Warning: you are leaving 2 commits behind, not connected to any of your branches: b9bb17a step 5 f2d9256 step 4 If you want to keep them by creating a new branch, this may be a good time to do so with: git branch <new-branch-name> b9bb17a Switched to branch 'master' # 现在切回master看不到复制过来的提交 # 通过下面的命令可以将HEAD重置到最新提交,即可看到rebase过来的2个提交 $ git reset --hard b9bb17a ```