Git Manual

简介

  • 在看了廖雪峰老师的课后,做了一些笔记,本文是对操作的归纳。

    操作

    初始化

    1
    git init//初始化仓库

添加文件

1
2
git add <file>//把文件放到暂存区
git commit -m <message>//提交暂存区的文件并备注

在这里插入图片描述

查看状态

1
2
git status//查看工作区的状态
git diff//查看修改的内容

版本回退

1
2
3
4
5
6
git reset --hard commit_id//返回到id对应的版本
git log//查看提交历史,回到过去
git reflog//查看命令历史,回到未来
git checkout -- file//放弃工作区的修改
git reset HEAD <file>//放弃暂存区的修改
git rm//删除一个文件

SSH Key

1
ssh-keygen -t rsa -C "youremail@example.com"//创建SSH Key

在用户主目录里找到.ssh文件,把当中的id_rsa.pub内容放到GitHub里面。
在这里插入图片描述

远程库

1
2
3
4
git remote add origin git@server-name:path/repo-name.git//关联远程库
git push -u origin master//第一次推送master分支的内容
git push origin master//推送最新修改
git clone git@server-name:path/repo-name.git//克隆一个仓库

在这里插入图片描述

分支

1
2
3
4
5
6
7
8
9
10
11
git branch//查看分支
git branch <name>//创建分支
git checkout <name>//切换分支
git switch <name>//切换分支
git checkout -b <name>//创建并且切换到新分支
git switch -c <name>//创建并且切换到新分支
git merge <name>//合并到当前分支
git branch -d <name>//删除分支
git log --graph --pretty=oneline --abbrev-commit//合并情况可视化
git merge --no-ff -m"<message>" <name>//有分支合并
git branch -D <name>//强行删除

保存现场

1
2
3
git stash//把当前分支操作入栈
git stash pop//把工作栈内容取出
git cherry-pick <commit>//把某个操作复制到当前分支

多人工作

1
2
3
4
git push origin <branch-name>//推送工作分支
git pull//推送失败,抓下远程分支试图合并
git branch --set-upstream-to <branch-name> origin//和远程分支建立联系
git rebase//将提交的分叉整理成直线

标签

1
2
3
4
5
6
git tag -a <tagname> -m"<message>"//给分支命名并且备注
git tag//查看所有标签
git push origin <tagname>//推送本地标签
git push origin --tags//推送全部本地标签
git tag -d <tagname>//删除一个本地标签
git push origin :refs/tags/<tagname>//删除远程标签