Git 和 GitHub 超入门指南(四)

Git基本命令

以下是一些基本的Git命令:

  • git add:将文件添加到Git索引中
  • git commit:将索引中的文件提交到Git仓库中
  • git status:查看工作目录和索引的状态
  • git log:查看提交历史记录

Git高级命令

以下是一些高级的Git命令:

  • git reset:回滚到某次提交
  • git revert:放弃某次提交
  • git rebase:变基

Github发布release版本

如果你想在GitHub上发布一个新版本,可以按照以下步骤操作:

  1. 在你的仓库页面上点击"Releases"选项卡。
  2. 点击"Draft a new release"按钮。
  3. 在弹出的窗口中填写新发布的版本号、标签、标题和描述等信息。
  4. 在描述中可以包含关于新版本的详细信息,例如修复的bug、新功能等。
  5. 上传你的软件包或文件。
  6. 点击"Publish release"按钮,完成发布。
  7. 其他用户可以通过下载或克隆你的代码库来获取新版本。

需要注意的是,创建Release需要有写入仓库的权限。如果你是仓库的管理员或拥有写入权限,就可以创建Release。如果没有写入权限,需要向仓库的管理员申请。

命令 作用
Reset(重置) 将分支顶端移至一个之前的提交。这个命令不要求提交消息。
Rebase(变基) 允许你改变分支历史记录中提交的存放方式。通常用于将多个提交压缩成一个提交。
Revert(还原) 还原共享分支上一个特定提交中做出的变更。需要push。

git reset 回滚到某次提交

git reset [] []

参数 作用
–soft 头部重置为,会留下所有更改的文件“要提交的更改”。
–mixed 重置索引但不重置工作树(即保留更改的文件但未标记提交)并报告尚未更新的内容。(默认)
–hard 重置索引和工作树。后对工作树中跟踪文件的任何更改都将被丢弃。
–merge 重置索引并更新工作树中与和HEAD之间不同的文件,但保留索引和工作树之间不同的文件
–keep 重置索引条目并更新工作树中在和HEAD之间不同的文件。

git revert 放弃某次提交

git revert 前后的提交仍会保留在 git log 中,而此次撤销会做为一次新的提交。

git rebase

  • 编辑以前的提交消息
  • 将多个提交合并为一个
  • 删除或恢复不再需要的提交
  1. 重新设置另一个分支和当前分支状态之间的所有提交

git rebase --interactive other_branch_name

  1. 对当前分支中的最后几个提交进行rebase

git rebase -i HEAD~数字 # HEAD~数字 表示最近的几个commit

  1. 变基时有六个命令:

    • pick

    pick只是意味着包括提交。重新安排 pick 命令的顺序会更改提交的顺序。

    如果选择不包括提交,则应删除整行。

    • reword

    重新设置 commit 的机会。提交所做的任何更改均不受影响。

    • edit

    进行更多提交,然后再继续进行变基。比如在两个提交之间插入更多提交。

    • squash

    可以将两个或多个提交合并为一个提交。提交被压缩到其上方的提交中。

    • fixup

    这类似于squash,但提交仅合并到其上方的提交中,并且舍弃消息。

    • exec

    可以对提交运行任意的Shell命令。

问题 解决方案
回滚本地工作区未暂存的改动 git checkout – 
回滚已暂存的改动,但未被提交 git reset --hard 
回滚commit所做的改动,生成新的commit,log不影响 git revert 
回滚已经提交的文件改动 git rebase -i 

你可能感兴趣的:(笔记,git,github)