首页 > 其他分享 >git 常用命令

git 常用命令

时间:2022-10-18 10:34:01浏览次数:55  
标签:HEAD git 本地 标签 提交 常用命令 分支

git 是最常用的版本控制工具

基本命令

git init

git init 初始化本地仓库

git status

git status 查看 git 状态

git add

git add filename 向本地仓库增加一个修改项。添加到文件树目录中
取消 add 操作 使用 git rm --cache

git commit

向远程数据库提交修改 some_message 为必填项
git commit -m "some_message"

远程仓库

git remote 添加远程仓库 命名为 origin
git remote add origin
clone 复制远程仓库
git clone

git push

将 commit 提交到 origin 仓库的 master 分支
git push -u origin "master"
或者直接 git push

git pull

git pull 从远程数据库拉取更新
git pull
例如
git pull 或者 git pull origin master

git pull 是 git fetch 和 git merge 两种步合并
git fetch 会拉取服务器到本地,建立一个匿名分支
git merge 将这个匿名分支,合并到本地的 master

git log

git log 查看日志
git log --oneline 以文本形式在一行中显示提交的信息

放弃修改

通过 git status 获得提示
如果是修改了本地文件,并没有 add 到本地仓库
那么可以使用 git restore 还原到更改之前

如果使用了 add 到了本地仓库
可以使用 git restore--staged 取消保存到本地仓库的操作

如果是使用了 commit
可以通过 git revert HEAD 撤销本次操作。会有一个编辑窗体要求输入日志
如果需要撤销多次,可以通过 git revert HEAD~[数字] 撤销更多操作,下标从 0 开始 (HEAD 相当于 HEAD~0)

如果是提交错了分支
可以通过 git cherry-pick 将提交拿到新的分支来
例如 git cherry-pick 8397cf0
删除掉原来的提交 git
git revert HEAD

分支详解

master 分支

用来合并的主分支

topic 分支

用来做开发的分支,除了 merge 分支之外的其他都属于 topic 分支

HEAD 标签

HEAD 标签用来指向当前分支最后一次更新的位置
HEAD ~(tilde) 和 ^(caret) 就可以指定某个提交位置

chekout 切换分支

git checkout HEAD~1 切换到当前分支的前一个提交位置

merge 和 rebase 合并分支

merge 就是合并,两条路汇聚到一起
rebase 就是重定向,将分支的路直接接到主路后面

merge 的冲突在修改之后,commit 就行了
rebase 的冲突在手动处理完之后
rebase --continue 提交修改
rebase --abort 取消 rebase

branch 建立分支

git branch branch-name

中间加入 -d 作为删除分支
git branch -d branch-name

git branch 显示所有分支
带 * 标识的是当前分支

常用分支名称

主分支 master
研发分支 develop
紧急修复 hotfix
发布 release
功能 feature

标签

git 有两种不同的标签
轻标签和注解标签
注解标签有三个属性:名称、注解和签名
轻标签只有一个名称属性
因此轻标签只是暂时一次性使用

打标签

git tag 打上轻标签

git tag -a 打上注解标签
git tag -am 快速打上注解标签

查看所有标签
git tag
git tag -n 显示注解

删除标签

git tag -d
删除指定的标签

改写提交

amend 修改

修改最近一次的提交注解,或者补充提交档案
补充提交

revert 取消

revert 取消指定的提交内容
不能随便删除已经发布的提交
git revert HEAD 取消本地提交

reset 丢弃提交

有三种不同的方式
hard 会修改本地文件和本地数据库
mixed 会修改本地,不去修改数据库
soft 本地文件目录和元数据目录都不修改

cherry-pick 提取别的分支的提交到本地分支

主要是用于将弄错的分支移交到正确的地方

rebase i

改写、替换、删除、或者合并提交

merge squash

在合并分支时,将分支的内容合并成一个修改,添加到分支
例如
git merge --squash

常见错误

src refspec master does not

没有 add 没有 commit 不能提交

冲突

在 git push 出现
![rejected]
error : failed to push some refs to
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This usually caused by another respository pushing
hint: to same ref. You may want to first integrate the remote changes
hint:(e.g. , 'git pull ...') before pushing again

存在冲突,需要先处理冲突
先 pull 下来看看

git log 无法退出

可以输入 q 推出

    --学无止境,爱拼才会赢

标签:HEAD,git,本地,标签,提交,常用命令,分支
From: https://www.cnblogs.com/xinloverong/p/16801759.html

相关文章

  • github 上的vscode vim配置
    settins.json{ //Vim "vim.autoSwitchInputMethod.defaultIM":"normal", "vim.cursorStylePerMode.replace":"underline-thin", "vim.easymotion":true, "vim.ea......
  • Docker的常用命令
    Docker的常用命令目录Docker的常用命令帮助命令1、镜像命令dockerimages查看所有本地的主机上的镜像dockersearch搜索镜像dockerpull下载镜像dockerrmi删除镜像2......
  • IDE提交Git出现husky>pre-commit错误
    若使用IDE提交Git出现以下错误:则是ES6在提交校验过程中出现了问题,强制提交方式为:命令行:gitcommit--no-verifyIDEA:在提交时取消勾选RunGithooks VScode:删除......
  • git commit 提交 格式化代码
    一,yarnadd--dev--exactprettier二,echo{}>.prettierrc.json三,prettier.json 文件添加buildcoverage 四,yarnaddeslint-config-prettier-D在package......
  • git & Sourcetree All In One
    git&SourcetreeAllInOneSourcetreeFreeGitGUIforMacandWindowshttps://www.sourcetreeapp.com/refshttps://confluence.atlassian.com/get-started-w......
  • Git 03:分支管理之解决冲突
    Git分支管理:解决冲突引入冲突当两个修改并入同一条分支中,造成了相互干扰,合并就会产生冲突。接下来,我们创建两个分支,并进行并行操作,人为制造合并的冲突。首先,我们从gi......
  • GitHub Desktop Clone GitHub的项目并在本地更新里面的内容再上传上去的方法
    已经上传的项目,想下载到本地更新里面的内容再上传上去(比如个人简历),怎么通过GitHubDesktop实现:1.打开GitHubDesktop->File->Clonerepository,如下所示:  2.之后定......
  • 基于Gitlab+Gitlab-CI+Docker的持续集成部署(含.gitlab-ci.yml说明)
    ​安装gitlabhttps://www.gitlab.com.cn/yuminstallcurlpolicycoreutilsopenssh-serveropenssh-clientsyuminstallpostfixsystemctlenablepostfixsystemctlstart......
  • git
    gitGit相关的配置文件1、Git\etc\gitconfig:Git安装目录下的gitconfig--system系统级2、C:\Users\Administrator\.gitconfig只适用于当前登录用户的配置......
  • Linux系统中查看进程端口常用命令有哪些?
    在Linux系统中,熟练掌握各种各样的Linux命令是非常关键的,它的功能十分强大,几乎能摆平所有状况,是我们开展工作、提升工作效率的重中之重。本篇文章为大家详细介绍一下Linu......