git 学习笔记

初始化git全局基础配置
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
初始化git仓库

git init

添加文件进入暂存区,可以多次使用add命令

git add <file>
git add . 可以提交当前目录下的变更文件到暂存区

将提交的文件git仓库,并填写当前提交信息

git commit -m <message>

显示当前git的状态

git status

显示从最近到最远的提交记录
git log //全信息
git log --pretty=oneline //简略版 
简单版本回退

在git中,HEAD为当前版本,回退到上一个版本为 HEAD^,回退到上上个版本为HEAD^^,回退前100个版本为HEAD~100
commit id可以填入全部或者填写前几位

git reset --hard <HEAD> || <commit id>

简单回退实例

查看git历史记录

git reflog

git查看文件区别

git diff --cached 比较的是暂存区的文件与仓库分支里(上次git commit 后的内容)的区别。
git diff HEAD -- 命令可以查看工作区和版本库里面最新版本的区别。

git文件放弃变更

git checkout -- file命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令checkout命令。

git未commit之前,add之后放弃变更

git checkout -- <file>...
万一文件已经add,在commit之前发现,还是可以以下命令还原到commit之前,然后在操作
git reset HEAD <file>...
git checkout -- <file>...

git删除文件

git rm <file>

git本地库关联远程库

git remote add origin <remote address>

git查看远程库

git remote -v

git提交到master远程分支

把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。
由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
git push <remote branch> <local branch>

小结:要关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git

关联后,使用命令git push -u origin master第一次推送master分支的所有内容;

此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改

git克隆远程仓库

git支持多种格式的地址,如git://或者https://
git clone <remote address>

git创建分支

git checkout <branch name>
-b 创建并进入当前分支
git checkout -b <branch name>

git查看分支

git branch

git切换分支

git checkout <branch name>

合并分支

git merge <branch name>

删除分支

git branch -d <branch name>

git查看合并分支图

git log --graph

git拉取远程分支

git pull

git隐藏当前暂存区

git stash save -m <message>

git查询隐藏区列表

git stash list

git恢复隐藏区的项目
git stash apply --index <stash> //恢复并不删除stash
git stash pop --index <stash index> //恢复并删除stash
git删除隐藏区的项目
git stash drop [<stash>] //单个移除定向序列的stash
git stash clear //删除所有的stash
git标签操作

新增标签:
git tag <tag name> <commit id>
不填commit id 就以HEAD为准

新增标签并填写commit
git tag -a <tag name> -m <message>

查询所有标签
git tag

推送一个本地标签到远程
git push origin <tag name>

推送本地所有未提交的标签到远程
git push origin --tags

删除一个本地标签
git tag -d <tag name>

删除一个远程标签
git push origin :refs/tags/<tag name>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Git常用语法 [TOC] Git简介 描述 ​ Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,...
    君惜丶阅读 9,043评论 0 13
  • Git教程 一、Git简介 1.1. Git的诞生1.2.集中式的vs分布式 二、安装Git 三、创建版本库 四、...
    曹渊说创业阅读 4,498评论 0 2
  • git学习笔记 声明 本文是本人学习Git过程中所做的笔记,以便日后查阅,文中多有错漏之处,不建议用作学习材料,文...
    sayonara_yoyo阅读 3,957评论 0 1
  • 一、常用终端指令 $ pwd用于查看当前目录 $ mkdir learngit 创建一个名为learngit的空目...
    天山雪莲_38324阅读 3,262评论 0 1
  • 青春,朦朦胧胧 青春,懵懵懂懂 青春,轰轰烈烈 青春,别荒废 第一章 来我学校? “哥,今天回来给你个大惊喜...
    余意秋阅读 3,916评论 0 2