美文网首页开发者手册
[ Git ] 快速参考

[ Git ] 快速参考

作者: 爱上落入尘世间的你 | 来源:发表于2018-06-24 22:43 被阅读0次

配置

# 全局配置
git config

# 项目配置
git config --global 

常用的用户信息配置

# 用法
git config user.name "twesix"

git config --global user.name " twesix"
git config --global user.email "a@b.com"
git config --global color.ui auto

常用的别名配置

# 用法
git config alias.short_command long_command

git config --global alias.st status \
git config --global alias.co checkout \
git config --global alias.ci 'commit -m' \
git config --global alias.br branch

git rm 的用法

# 删除工作区的文件并在缓存区标记这次删除
# 之后提交的话这次删除就会被commit所记录
git rm foo

# 从缓存区删除, 但在工作区中保留
# 这个操作会让git停止跟踪这个文件的变化
# 但是用git add *添加所有文件之后, git会再次开始跟踪这个文件的变化
# 所以, 如果想要彻底不跟踪某个文件, 一定要在.gitignore中标记
git rm --cached foo

git reset 的用法

# 所有需要commit_id的地方都可以用branch_name, HEAD, tag_name来代替
# 不一定非要写完整的commit_id
# commit_id可以省略不写, 默认为HEAD

# 仅仅移动HEAD所指向的branch_name的指向
# 就是HEAD依旧指向该branch_name
# 但是branch_name指向变成了commit_id
# 不会修改暂存区和工作目录
git reset --soft commit_id

# 移动HEAD所指向的branch_name的指向
# 并修改暂存区, 使得暂存区和commit_id指向的commit一致
git reset commit_id

# 移动HEAD所指向的branch_name的指向
# 并修改暂存区, 使得暂存区和commit_id指向的commit一致
# 然后修改工作目录, 用commit_id指向的commit中的内容覆盖工作目录
# 这个命令极其危险, 可能会造成工作目录中未提交的修改丢失
# 你最好知道你在做什么
git reset --hard commit_id

# 什么都不做
git reset --soft commit_id file_path

# 用commit_id中file_path的内容更新暂存区中file_path的内容
# 命令中的`--`表示后面的是文件路径, 不要当成参数去解析
git reset commit_id -- file_path

# 用commit_id中file_path的内容更新暂存区中file_path的内容
# 同时也用commit_id中file_path文件的内容覆盖掉工作目录中file_path文件的内容
# 命令中的`--`表示后面的是文件路径, 不要当成参数去解析
# 这个命令极其危险, 可能会造成工作目录中未提交的修改丢失
# 你最好知道你在做什么
git reset --hard commit_id -- file_path

git stash 的用法

# 将发生变化的文件压栈暂存, 注意, 不是放入准备提交的那个缓存区
git stash

# 用堆栈最顶端的版本覆盖当前工作区
git stash pop

# 列出堆栈中的所有版本
git stash list

# 清空堆栈
git stash drop

git branch 的用法

# 列出所有的分支
git branch

# 创建名为foo的新分支
git branch foo

# 删除名为foo的分支
git branch -d foo

git checkout 的用法

# 所有需要commit_id的地方都可以用branch_name, HEAD, tag_name来代替
# 不一定非要写完整的commit_id
# commit_id可以省略不写, 默认为HEAD

# 移动HEAD指向branch_name分支
# 然后根据branch_name分支指向的commit更新暂存区和工作目录
# 如果工作目录有未提交的修改, 为了避免这些修改被覆盖而丢失
# 这个命令会尝试合并当前工作目录和commit
# 如果无法合并
# 这个命令会报错, 警告你相关的情况
git checkout branch_name

# 不移动HEAD
# 根据HEAD所指向的commit中foo的内容来替换暂存区中的foo的内容
# 再使用HEAD所指向的commit中foo的内容来替换工作目录中的foo的内容
# 注意, 这个命令会试图将commit中foo的内容与工作目录中foo的内容进行合并
# 如果无法合并, 会给出相关的警告
get checkout HEAD(or commit_id or branch_name) foo

# 创建并切换到foo分支, 新的分支指向HEAD所指向的commit
# 当HEAD不指向任何分支时, 即detached状态时, 这个命令很有用
git checkout -b foo

git commit 的用法

# 提交缓存区的改动
git commit -m 'commit message'

git fetch 的用法

# 从origin_name拉取所有的远程分支, 但是不与本地的分支合并也不修改工作区
# branch_name 可以不写, 默认所有分支
# origin_name 也可以不写, 默认origin
git fetch remote_name branch_name

git merge 的用法

# 将foo分支合并到当前分支
git merge foo


git pull 的用法

# 等同于git fetch + git merge
git pull

git push 的用法

# 将本地的分支推送到远程服务器
git push remote_name local_branch:remote_branch

git diff 的用法

# 列出当前没有添加到缓存区的文件的变化情况
git diff

# 列出缓存区文件与上次提交文件的变化情况
git diff --staged

# 列出某个文件每次提交的变化情况
git diff--follow foo

# 列出两个分支的不同之处
git diff foo bar

git log 的用法

# 列出当前分支的提交链
git log


相关文章

  • [ Git ] 快速参考

    配置 常用的用户信息配置 常用的别名配置 git rm 的用法 git reset 的用法 git stash 的...

  • Git 命令

    参考: Git命令参考手册(文本版) Git 参考手册

  • Git命令参考手册

    前言 本篇文章主要Git 参考手册。目的是为学习与记忆 Git 使用中最重要、最普遍的命令提供快速翻阅。 这些命令...

  • Git 快速使用

    MENU Git 快速使用 之 配置并获取SSH公钥Git 快速使用 之 Git 分支 branchGit 快速使...

  • HTTP应知应会知识点复习手册(下)

    前言 本文快速回顾了常考的的知识点,用作面试复习,事半功倍。 本文参考 本文内容主要参考来自CyC2018的Git...

  • 上传本地代码到github

    快速参考 怎么将新创建的本地代码上传到github上 第一步:建立git仓库cd到你的本地项目根目录下,执行git...

  • Git基本指令

    参考资料 Git Community Book 中文版 Git 易百教程 Git 英文参考资料 有关git的工具有...

  • Git 参考书

    Git 参考书连接 Git教程

  • git config

    [参考link][参考w3cschool git config link] 执行git config -lorvi...

  • Gitlab配置方法(liunx)

    Git配置 使用git配置方法如何安装git方法,请参考git安装办法,此处不再介绍,请参考以前安装方法 添加ss...

网友评论

    本文标题:[ Git ] 快速参考

    本文链接:https://www.haomeiwen.com/subject/dyosyftx.html