Linux笔记之GIT常用命令

GIT常用命令表

类型 命令 含义
git config git config --list 查看git的配置列表
git config --global user.name "xxx" git config --global user.email "xxx@xx.cn" --global 表示全局,即当前用户都有效,该配置会出现在 ~/.gitconfig 文件;不加--global即局部是只对当前仓库起效,配置信息会在当前仓库根目录/.git/config文件
git config --global core.editor "vim" 设置 Git 默认编辑器为 Vim
git config --global color.diff auto 让 git diff 使用颜色显示差异
git clone git clone url 从master克隆
git clone -b branch/Tag url 克隆某一个branch分支或Tag
git push (1) git push origin --delete branch_name (2) git push origin :branch_name 删除远程分支
git push origin master 如果远程分支被省略,则表示将本地分支推送到与之存在追踪关系的远程分支(通常两者同名)
git push origin master:refs/for/master 将本地的master分支推送到远程主机origin上的对应master分支, origin 是远程主机名,第一个master是本地分支名,第二个master是远程分支名,refs/for: 提交代码到服务器之后需要经过code review之后才能进行merge
git push origin master:test-branch 将本地master分支推送到远程仓库的test-branch分支,如果远程仓库里没有该分支,Git会在远程自动创建这个分支
git branch git branch -d 删除本地分支,删除前会检查merge状态
git branch -D git branch --delete --force的简写,它会直接删除
git branch -a 查看本地和远程所有分支
git pull (1) git fetch --all (2) git reset --hard origin/branch 放弃本地修改,远程仓库直接强制覆盖本地仓库
(1) git pull origin (2) branch (3) git status (4) git add . (5) git commit -m "xxx" (6) git push origin branch 一般提交代码步骤
git add git add . 本地所有untrack的文件都加入暂存区,并根据.gitignore做过滤
git add * 忽略.gitignore把所有文件都加入
git add -A 提交所有变化
git diff git diff origin/branch1 origin/branch2 显示两个分支最后commit的内容差异
git diff 工作区和暂存区比较
git diff --cached 暂存区和HEAD比较
git diff HEAD 工作区和HEAD比较
git checkout git checkout origin/master -- path/to/the/file 单独更新工作区里面的一个特定文件
git checkout -b branch 创建新分支,如果已经存在同名,会报错
git checkout -B branch 创建新分支,如果存在同名,强制建立并覆盖原分支
(1) git log (2) git checkout commit_id git log查看某次历史commit id 拉取某次历史commit id的代码
git tag git tag v1.0 创建一个轻量标签,Git 中的标签(tag)是针对特定 提交 创建的,不受分支的影响。当你在某个分支上创建标签时,实际上是在该分支的当前 提交 上创建标签
git tag -a v1.0 -m "version 1.0 release" 创建一个附注标签
git tag <tag_name> <commit_hash> 为特定提交创建标签
git show <tag_name> 查看标签的详细信息
git tag -d <tag_name> 删除一个本地标签
git push origin <tag_name> 推送单个标签到远程仓库
git push --delete origin <tag_name> 删除已经推送了的远程仓库里的标签
相关推荐
Madison-No75 小时前
Git版本控制工具(一)
git
_upupup9 小时前
Linux的调试工具——gdb/cgdb
linux·服务器
JeJe同学9 小时前
Docker镜像导入、容器启动
linux·运维·docker
Jason_zhao_MR9 小时前
Linux与实时控制如何兼得
linux·嵌入式硬件·机器人·工业控制
闲云野鹤在人间10 小时前
MySQL|从理论、安装、备份到主从复制、MHA高可用详解
linux·运维·数据库·mysql·云计算
一个风轻云淡11 小时前
GCC 和 GDB命令简单解读
java·linux·前端
H.莓飛11 小时前
【数据结构】二叉树_OJ题
linux·开发语言·数据结构·算法
资料库0112 小时前
Linux 8个常见运维故障排查
java·linux·运维
零基础12312 小时前
Ubuntu 常用命令汇总
linux·运维·开发语言
Android系统攻城狮13 小时前
Linux Gstreamer深度解析之gst_audio_sink_get_type调用流程与实战(六十五)
linux·运维·服务器·音视频·gstreamer音视频·音视频进阶·gstreamer音视频进阶