git 常用命令介绍

版本管理

1,git status 查看工作区和暂存区状态
2,git log 查看提交日志 --pretty=oneline 参数可以一行显示一个提交 --graph 查看分支合并图 --abbrev-commit 简写commit 哈希码
3,git checkout -- test.txt 在文件修改还没添加到暂存区前,可以还原修改,命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令
4,git reset HEAD test.txt 在文件已经添加到暂存区时,使用此命令清空暂存区的修改,再使用git checkout -- test.txt 还原到当前版本
5,git add test.txt 将修改添加到暂存区
6,git reflog 查看历史操作的命令
7,git reset --hard HEAD^ 回退到上一个版本,HEAD^^ 上上个版本,HEAD~100 上100个版本,git reset --hard asd21 ,回退到直到指定版本
8,git diff HEAD -- test.txt 比较test.txt 文件当前版本和工作区的差异,- 表示前者内容,+表示后者内容,其他内容为没有冲突部分,@@ -41,7 +41,7 @@ 表示第41行后连续7行有变动以及变化情况
9,git log 或 git diff 后显示冒号,代表当前返回结果很多,没有完全显示,可以按回车或者↓键查看,按q结束
10, 标签是指向特定commit的指针,不可移动。git tag v1.0 创建标签,git tag 查看所有标签,默认标签是打在最新提交的commit上的,git tag v0.9 f52c633 在指定提交上打标签,git show v0.9 查看标签信息,git tag -a v0.1 -m "version 0.1 released" 1094adb 添加说明,git tag -d v0.1 删除标签,git push origin v1.0 推送标签到远程,git push origin --tags 一次性推送全部尚未推送到远程的本地标签,
删除远程标签: 1)先本地删除 git tag -d v0.9 2)远程删除 git push origin :refs/tags/v0.9

远程仓库

1,查看远程分支 git remote ,-v 显示详细信息
2,创建SSH Key : ssh-keygen -t rsa -C "youremail@example.com"
3,关联远程仓库 git remote add origin git@server-name:path/repo-name.git
4,git push -u origin master 指定默认分支,以后直接使用 git push
5,克隆远程仓库 git clone git@github.com:michaelliao/gitskills.git
6,git branch --set-upstream-to=origin/dev dev 本地dev分支与远程origin/dev分支的链接
7,git rebase 变基,把本地未push的分叉提交历史整理成直线

分支管理

1,HEAD 指向的是分支(master,master 指向master 分支的最新提交),分支是一连串提交构成的线


image.png

2,git branch dev 创建分支,只是创建了一个指针


image.png

3,git checkout dev 切换分支,HEAD指向dev,git branch dev 与 git checkout dev 可以使用一条命令代替 git checkout -b dev
新版命令: git switch -c dev 切换并创建分支dev

git switch master 切换分支
4,git branch 查看分支,* 表示当前分支
5,git merge dev 合并指定分支到当前分支
6, git branch -d dev 删除分支
7, 关闭分支合并的默认 Fast forward模式 git merge --no-ff -m "merge with no-ff" dev,Fast forward模式 删除分支后,会丢掉分支信息
8,git stash 存储工作现场,git stash list 查看, git stash appl 恢复,但不删除,git stash drop 删除,git stash pop 恢复的同时删除
9,git cherry-pick 4c805e2 复制一个特定的提交到当前分支,用于复制其他分支做的 bug修复
10,开发一个新feature,最好新建一个分支;如果要丢弃一个没有被合并过的分支,可以通过git branch -D <name>强行删除。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 配置 首先是配置帐号信息ssh -T git@github.com # 登陆 github 修改项目中的个人信息 ...
    guanguans阅读 824评论 0 3
  • 一. Git初始化 如果电脑未安装git工具,需要下载安装对应的32or64位版本。 1. 首先从官网下载git工...
    程序人生_小龙阅读 439评论 0 0
  • 摘要:本篇文章将记录git常用命令介绍和使用,主要包括clone、init、add、mv、reset、rm、log...
    曦儿宝贝阅读 694评论 0 0
  • 总结 Git 版本管理 - 命令 代码提交删除及版本回退 git add readme.txt添加修改的文件,把文...
    丿小七阅读 354评论 0 0
  • 这篇博文是自己在学习git过程中的思考总结。本文仅仅代表个人的看法,如有不妥地方还请本文文末留言。 😊 原文链接g...
    Ming_Hu阅读 1,276评论 4 18

友情链接更多精彩内容