github

github 命令

  • 工作区 (当前所见的文件夹) 的目录树
  • 缓存区(索引区、暂存区)的目录树
  • 分枝 的目录树
  • 远程库

<!–HEAD:分枝的指针,默认指向 master–>

git 命令


工作区 —> 缓存区

git add 可以将冲突标记为解决

git add $filepath$

缓存区 —> 工作区

替换工作区

git checkout $filepath$

从 缓存区与工作区 删除 [-f 修改并放到缓存区,需要强行删除]

git rm $filepath$

从缓存区删除,不改变工作区

git rm –cached $filepath$

缓存区 —> 分枝

[-am 含 git add 命令的提交]

git commit -m ‘提交内容…’

分枝

创建分枝

git branch $branchname$

查看本地分枝、远程分枝
git branch -a

切换分枝
git checkout $branchname$

合并分枝brh 到当前分枝
git merge brh

分枝 —> 缓存区

用 HEAD 替换缓存区

git reset HEAD

用 HEAD 覆盖缓存区、工作区

git checkout HEAD

分枝 —> 远程库

git push

提交master 分枝到 origin远程库

git push origin master

远程库 —> 分枝

更新,并附带 merge

git pull

获取最新版本,不合并

git fetch


标签(分枝的快照)

查看所有标签
git tag

新建标签 v0.1
git tag v0.1

新建标签v0.1,并添加注释
git tag -a v0.1 -m “这里是注释”

删除标签
git tag -d v0.1

查看标签的修改内容
git show v0.1

切换到 v0.1版本 tag
git checkout v0.1

推送v0.1到服务区
git push origin v0.1

推送所有tag到服务区
git push origin –tags


其他操作

克隆远程库

git clone $git仓库地址$

下载所有依赖 –recursive

git clone –recursive 仓库地址

添加远程库 origin 为远程库的别名

git remote add origin $git仓库地址$

查看远程库

git remote -v

删除仓库

git remote rm origin


信息查询

git status

(-s简略) 查看与最近一次 commit 的 改变状态

工作区的改动

git diff

缓存区的改动 [commit 为版本号]

git diff –cached

工作区与缓存区的改动

git diff HEAD

改动摘要

git diff –stat

历史事件

git log

–oneline 简略信息

–graph 查看事件

–decorate 标签

简单查看带标签的历史信息

git log –decorate –graph –oneline

查看某个用户的提交

git log –author=loganv –oneline -5

查看时间段

git log –oneline –before={3.weeks.ago} –after={2010-04-18} –no-merges

查看某个提交的文件

先用 git log filepath 找出 提交ID

在用 git show 提交ID:filepath