git 命令

git 命令

在这里插入图片描述

git clone 下载项目

git branch wxj 生成自己的分支:wxj

git checkout wxj 切换到自己的分支

git status 查看当前工作区和暂存区的状态。

On branch wxj
Changes not staged for commit:
(use “git add …” to update what will be committed)
(use “git restore …” to discard changes in working directory)
modified: app/model/account/cmdb.go
modified: app/model/account/cmdb_test.go
modified: conf/mount/config.dev.toml

no changes added to commit (use “git add” and/or “git commit -a”)

git stash list 显示当前存储的所有“储藏”(stash)内容的列表

在Git中,“储藏”是一种将工作目录和暂存区的更改暂时保存起来的方法,以便在切换分支或进行其他操作时轻松地切换回这些更改。

当您运行 git stash list 命令时,Git会列出所有存储的“储藏”条目,并显示每个储藏条目的唯一标识符、创建者、创建时间等信息。

此处第一次是空的

git stash 暂存当前工作目录的更改

Saved working directory and index state WIP on wxj: 1f2bf373 Merge branch ‘liminggang’ into ‘master’

这个消息表示您已经使用 git stash 命令将当前的工作目录和暂存区(index)的状态保存为一个“储藏”(stash)了。具体来说,该储藏包含了您在 wxj 分支上进行的工作,并且提交的信息是 1f2bf373 Merge branch 'liminggang' into 'master'

通过运行 git stash list 命令,您可以查看所有保存的储藏内容的列表,并找到这个具体的储藏。

git status

On branch wxj
nothing to commit, working tree clean

git checkout master 切换到主分支

Switched to branch ‘master’
Your branch is up to date with ‘origin/master’.

git log 查看提交历史 按q退出

git pull 从远程仓库拉取并合并更改

git checkout wxj 切到wxj分支

Switched to branch ‘wxj’

git log

git merge master 将master分支合并到当前分支

git log 查看提交历史

git stash pop 从最近保存的 stash(暂存)中提取最新的变更,并将其应用到当前工作目录中

git add . 将当前工作目录下所有修改过的文件添加到暂存区。这意味着所有已修改的文件都将被准备好待提交。

git status

On branch wxj
Changes to be committed:
(use “git restore --staged …” to unstage)
modified: app/model/account/cmdb.go
modified: app/model/account/cmdb_test.go
modified: conf/mount/config.dev.toml

git restore --staged src/plugin/axios/baseUrl.js 取消提交baseUrl.js

git commit -m “修改关于离职员工的腾讯云国际站的代码” 提交这些暂存的文件

[wxj 81f00d17] 修改关于离职员工的腾讯云国际站的代码
3 files changed, 15 insertions(+), 4 deletions(-)

git push 将会把您本地分支的更改推送到远程仓库中。

fatal: The current branch wxj has no upstream branch.
To push the current branch and set the remote as upstream, use

git push --set-upstream origin wxj

git push --set-upstream origin wxj 指定分支流是wxj

之后去对应git仓库手动操作。

当你在merge远程仓库时,发现多提交了一些文件的补救措施

git log

commit 8babf5b45b4554f9355f83430a3b82f97d480efc (HEAD -> wxj, origin/wxj)
Author: wangxiujie <wangxiujie@zuoyebang.com>
Date:   Tue Aug 6 16:01:23 2024 +0800

    EIP支持创建时给管理单元打标签

commit a4aa77954ab2e24a5f62e65c5b01eaeca396c85f
Author: wangxiujie <wangxiujie@zuoyebang.com>
Date:   Tue Aug 6 15:36:13 2024 +0800

    lb

commit d0e1e4db60aaf0a7a11e45a74cb1920cdf6fd8d3 (tag: ci_20240805155807938_odincloudmanager稳定版本, origin/master, origin/HEAD, master)
Merge: f94b7a19 30759f61


git reset --soft a4aa77954ab2e24a5f62e65c5b01eaeca396c85f

回退到特定版本

git reset --soft HEAD^

回退到上一版本
这时就到了本地comit前的状态

git restore --staged app/model/lb/data_lbManager.go

退回不该上传的文件

git commit -m “lb和eip支持创建时即打管单标”

重新commit

git push -f

强制覆盖云上自己的分支版本

git reset 详解

git reset --soft :

–soft 参数表示在重置后保留工作目录和暂存区的更改,不会修改文件内容。
HEAD 指针移动到指定的提交,但工作目录和暂存区的更改仍保留。
这使得您可以重新提交或修改之前的更改并重新提交。

git reset --hard :

–hard 参数表示重置后将工作目录和暂存区回滚到指定提交时的状态,丢弃所有更改。
HEAD 指针移动到指定的提交,并清除工作目录和暂存区中的所有更改,使其与指定提交的内容完全一致。
这将使您丢失所有未提交的更改,请谨慎使用。

git reset

在没有指定参数的情况下,git reset 默认行为是使用 --mixed 参数,这等效于 git reset --mixed 。下面是 git reset --mixed 的行为:
git reset --mixed :
将 HEAD 移动到指定的提交。
重置暂存区,但保留工作目录中的更改。
这意味着工作目录中的更改不会被丢弃,但暂存区的更改会被取消。
您可以使用 git add 将工作目录中的更改重新添加到暂存区,然后重新提交。
因此,使用 git reset 而不带任何参数时,实际上是将 HEAD 移动到指定的提交,同时重置暂存区,但保留工作目录中的更改。这种行为有助于重新组织提交历史或取消暂存的更改。

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值