千家信息网

linux中Git有什么用

发表于:2025-02-19 作者:千家信息网编辑
千家信息网最后更新 2025年02月19日,这篇文章主要介绍了linux中Git有什么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。导航 —— 跳到之前的分支git check
千家信息网最后更新 2025年02月19日linux中Git有什么用

这篇文章主要介绍了linux中Git有什么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

导航 —— 跳到之前的分支

git checkout -

查看历史

# 每个提交在一行内显示 git log --oneline  # 在所有提交日志中搜索包含「homepage」的提交 git log --all --grep='homepage'  # 获取某人的提交日志 git log --author="Maxence"

哎呀:之前重置了一个不想保留的提交,但是现在又想要回滚?

# 获取所有操作历史 git reflog  # 重置到相应提交 git reset HEAD@{4} # ……或者…… git reset --hard <提交的哈希值>

哎哟:我把本地仓库搞得一团糟,应该怎么清理?

git fetch origin git checkout master git reset --hard origin/master

查看我的分支和 master 的不同

git diff master..my-branch

定制提交

# 编辑上次提交 git commit --amend -m "更好的提交日志"  # 在上次提交中附加一些内容,保持提交日志不变git add . && git commit --amend --no-edit  # 空提交 —— 可以用来重新触发 CI 构建 git commit --allow-empty -m "chore: re-trigger build"

squash 提交

比方说我想要 rebase 最近 3 个提交:

- git rebase -i HEAD~3
- 保留第一行的 pick,剩余提交替换为 squash 或 s
- 清理提交日志并保存(vi 编辑器中键入 :wq 即可保存)

pick 64d26a1 feat: add index.js s 45f0259 fix: update index.js s 8b15b0a fix: typo in index.js

修正

比方说想在提交 fed14a4c 加上一些内容。

git 提交分支

git add . git commit --fixup HEAD~1 # 或者也可以用提交的哈希值(fed14a4c)替换 HEAD~1  git rebase -i HEAD~3 --autosquash # 保存并退出文件(VI 中输入 `:wq`)

rebase 的时候在每个提交上执行命令

如果特性很多,一个分支里可能有多个提交。如果测试失败了,你希望能找到导致测试失败的提交。这时候你可以使用 rebase --exec 命令在每个提交上执行命令。

# 在最近 3 个提交上运行 `npm test` 命令 git rebase HEAD~3 --exec "npm test"

暂存

暂存不止是 git stash 和 git stash pop ;)

# 保存所有正在追踪的文件 git stash save "日志信息"  # 列出所有的暂存项 git stash list  # 获取并删除暂存项 git stash apply stash@{1} git stash drop stash@{1} # ……或使用一条命令…… git stash pop stash@{1}

清理

# 移除远程仓库上不存在的分支 git fetch -p  # 移除所有包含 `greenkeeper` 的分支 git fetch -p && git branch --remote | fgrep greenkeeper | sed 's/^.\{9\}//' | xargs git push origin --delete

GitHub = Git + Hub

我把 Hub 当成 git 的一个封装来用。你如果也想这么做,可以设置一个别名:alias git='hub'

# 打开浏览器访问仓库 url(仅限 GitHub 仓库)git browse

额外福利:我最喜爱的 git 别名

alias g='git' alias glog='git log --oneline --decorate --graph' alias gst='git status' alias gp='git push' alias ga='git add'alias gc='git commit -v'  #  alias yolo='git push --force'  # 每周站会汇报工作时用 git-standup() {     AUTHOR=${AUTHOR:="`git config user.name`"}      since=yesterday     if [[ $(date +%u) == 1 ]] ; then         since="2 days ago"     fi      git log --all --since "$since" --oneline --author="$AUTHOR" }

感谢你能够认真阅读完这篇文章,希望小编分享的"linux中Git有什么用"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

分支 日志 命令 仓库 篇文章 一行 内容 别名 历史 存项 文件 测试 不同 一团糟 价值 信息 兴趣 同时 多个 时候 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 最强网络安全大赛 无锡品牌软件开发活动简介 龙族幻想如何开启创建服务器 重庆大学采购数据库费用 软件开发公司与软件运营公司 手机 数据库 工具有哪些 温州助力智慧校园软件开发 苏州瑕疵检测软件开发 芯片开发与软件开发区别 服务器需要用到什么网络技术 数据库嵌套另一个数据库查询 linux连数据库 软件开发能干到什么程度 手机如何刷网站数据库 一般做软件开发能做到多少岁 软件开发怎么转算法 魔兽aster在哪个服务器 互联网算科技公司吗 网络安全法 释义 小规模软件开发服务费税率6 组图怎么写入数据库 php 数据库配置为xml 文件 通州区专业软件开发排名 奇安信网络安全领导 软件开发不套用模板 4G无线网络技术有哪些特点 wcf框架官方测试数据库 杭州博付互联网科技有限公司 vue基于数据库动态目录树 广西广播电视台网络安全教育
0