”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > git | git技巧和窍门

git | git技巧和窍门

发布于2024-07-31
浏览:170

Git | Tips and Tricks

笔记
您可以查看我个人网站上的其他帖子:https://hbolajraf.net

Git 提示和技巧

Git 是一个强大的版本控制系统,可以让您的开发工作流程更加高效。以下是一些提示和技巧,可帮助您充分利用 Git。

配置 Git

在开始使用 Git 之前,最好使用您的姓名和电子邮件地址对其进行配置。此信息将与您的提交相关联。

git config --global user.name "hbolajraf"
git config --global user.email "[email protected]"

您还可以设置其他配置,例如您的首选文本编辑器和默认分支。

基本命令

1. 初始化存储库:要启动新的 Git 存储库,请在项目目录中使用 git init 。

2. 克隆存储库:要从远程 URL 克隆存储库,请使用 git clone

3. 提交更改:进行更改后,使用 git commit -m "Your commit message" 保存更改。

4. 检查状态:使用 git status 查看工作目录的状态。

分枝

分支机构对于管理不同的开发线至关重要。

1. 创建分支:使用 gitbranch 创建新分支。

2. 切换分支:要切换到不同的分支,请使用 git checkout

3. 合并分支:使用 git merge 将一个分支的更改合并到另一个分支。

4. 删除分支:使用 gitbranch -d 删除分支。

藏匿

当您需要临时保存更改时,隐藏非常有用。

1. Stash Changes:使用 git stash 保存更改。

2. Apply Stash:要重新应用更改,请使用 git stash apply。

3. 列出存储:使用 git stash list 查看存储列表。

交互式变基

交互式变基允许您修改提交历史记录。

1. 交互式变基:使用 git rebase -i HEAD~n 以交互方式对最后 n 次提交进行变基。

2. 编辑提交:将“pick”更改为“edit”以修改提交。

3. 修改提交:使用 git commit --amend 编辑当前提交。

Git 别名

Git 别名允许您创建 Git 命令的快捷方式。

1. 创建别名:向全局 Git 配置添加别名。

git config --global alias.co checkout

2. 用法:现在,您可以使用 git co 作为 git checkout 的简写。

Git 钩子

Git 挂钩是在某些 Git 事件上自动运行的脚本。

1. Pre-Commit Hook:创建 .git/hooks/pre-commit 脚本以在提交之前运行操作。

2. Post-Receive Hook:在服务器的 Git 存储库中,创建一个 hooks/post-receive 脚本以在收到推送后执行操作。

忽略文件

您可以使用 .gitignore 文件指定要忽略的文件或模式。

1. 创建 .gitignore:创建一个名为 .gitignore 的文件,并列出要忽略的文件、目录或模式。

2. 示例.gitignore

# Ignore build artifacts
bin/
obj/

# Ignore log files
*.log

# Ignore a specific directory
docs/

接下来是什么?

这些提示和技巧将帮助您更加熟练地使用 Git,使您的版本控制任务更加高效,让您的开发过程更加顺畅。

版本声明 本文转载于:https://dev.to/hbolajraf/git-tips-and-tricks-5326?1如有侵犯,请联系[email protected]删除
最新教程 更多>
  • 大批
    大批
    [2 数组是对象,因此它们在JS中也具有方法。 切片(开始):在新数组中提取部分数组,而无需突变原始数组。 令ARR = ['a','b','c','d','e']; // USECASE:提取直到索引作...
    编程 发布于2025-02-19
  • 如何为PostgreSQL中的每个唯一标识符有效地检索最后一行?
    如何为PostgreSQL中的每个唯一标识符有效地检索最后一行?
    [2最后一行与数据集中的每个不同标识符关联。考虑以下数据: 1 2014-02-01 kjkj 1 2014-03-11 ajskj 3 2014-02-01 sfdg 3 2014-06-12 fdsa 为了检索数据集中每个唯一ID的最后一行信息,您可以在操作员上使用Postgres的有效效...
    编程 发布于2025-02-19
  • 如何使用替换指令在GO MOD中解析模块路径差异?
    如何使用替换指令在GO MOD中解析模块路径差异?
    克服go mod中的模块路径差异 github.com/coreos/etcd/integration imports :解析GO.mod:模块将其路径声明为: go.etcd.io/bbolt [&&&&&&&&&&&&&&&&&&&&&&&&&&&& github.com/coreos/b...
    编程 发布于2025-02-19
  • 在没有密码提示的情况下,如何在Ubuntu上安装MySQL?
    在没有密码提示的情况下,如何在Ubuntu上安装MySQL?
    在ubuntu 使用debconf-set-selections 在安装过程中避免密码提示mysql root用户。这需要以下步骤: sudo debconf-set-selections
    编程 发布于2025-02-19
  • 如何检查对象是否具有Python中的特定属性?
    如何检查对象是否具有Python中的特定属性?
    方法来确定对象属性存在寻求一种方法来验证对象中特定属性的存在。考虑以下示例,其中尝试访问不确定属性会引起错误: >>> a = someClass() >>> A.property Trackback(最近的最新电话): 文件“ ”,第1行, AttributeError:SomeClass实...
    编程 发布于2025-02-19
  • 如何以不同的频率控制Android设备振动?
    如何以不同的频率控制Android设备振动?
    控制使用频率变化的Android设备振动是否想为您的Android应用程序添加触觉元素?了解如何触发设备的振动器至关重要。您可以做到这一点:生成基本振动以生成简单的振动,使用振动器对象:这将导致设备在指定的持续时间内振动。许可要求通过上述技术,您可以创建在您的Android应用程序中自定义振动,以增...
    编程 发布于2025-02-19
  • 如何克服PHP的功能重新定义限制?
    如何克服PHP的功能重新定义限制?
    克服PHP的函数重新定义限制在PHP中,多次定义一个相同名称的函数是一个no-no。尝试这样做,如提供的代码段所示,将导致可怕的“不能重新列出”错误。 //错误:“ cance redeclare foo()” 但是,PHP工具腰带中有一个隐藏的宝石:runkit扩展。它使您能够灵活地重新定义...
    编程 发布于2025-02-19
  • 版本5.6.5之前,使用current_timestamp与时间戳列的current_timestamp与时间戳列有什么限制?
    版本5.6.5之前,使用current_timestamp与时间戳列的current_timestamp与时间戳列有什么限制?
    在默认值中使用current_timestamp或mysql版本中的current_timestamp或在5.6.5 这种限制源于遗产实现的关注,这些限制需要为Current_timestamp功能提供特定的实现。消息和相关问题 current_timestamp值: 创建表`foo`( `...
    编程 发布于2025-02-19
  • 如何在JavaScript对象中动态设置键?
    如何在JavaScript对象中动态设置键?
    如何为JavaScript对象变量创建动态键,尝试为JavaScript对象创建动态键,使用此Syntax jsObj['key' i] = 'example' 1;将不起作用。正确的方法采用方括号:他们维持一个长度属性,该属性反映了数字属性(索引)和一个数字属性的数量。标准对象没有模仿这...
    编程 发布于2025-02-19
  • 如何使用组在MySQL中旋转数据?
    如何使用组在MySQL中旋转数据?
    在关系数据库中使用mysql组使用mysql组来调整查询结果。在这里,我们面对一个共同的挑战:使用组的组将数据从基于行的基于列的基于列的转换。通过子句以及条件汇总函数,例如总和或情况。让我们考虑以下查询: select d.data_timestamp, sum(data_id = 1 tata...
    编程 发布于2025-02-19
  • 可以在纯CS中将多个粘性元素彼此堆叠在一起吗?
    可以在纯CS中将多个粘性元素彼此堆叠在一起吗?
    https://webthemez.com/demo/sticky-multi-header-scroll/index.html </main> <section> display:grid; grid-template-col...
    编程 发布于2025-02-19
  • HTML格式标签
    HTML格式标签
    HTML 格式化元素 **HTML Formatting is a process of formatting text for better look and feel. HTML provides us ability to format text without us...
    编程 发布于2025-02-19
  • 如何修复\“常规错误:2006 MySQL Server在插入数据时已经消失\”?
    如何修复\“常规错误:2006 MySQL Server在插入数据时已经消失\”?
    How to Resolve "General error: 2006 MySQL server has gone away" While Inserting RecordsIntroduction: connect to to to Database connect to t...
    编程 发布于2025-02-19
  • 如何限制动态大小的父元素中元素的滚动范围?
    如何限制动态大小的父元素中元素的滚动范围?
    在交互式界面中实现垂直滚动元素的CSS高度限制 考虑一个布局,其中我们具有与可滚动的映射div一起移动的subollable map div用户的垂直滚动,同时保持其与固定侧边栏的对齐方式。但是,地图的滚动无限期扩展,超过了视口的高度,阻止用户访问页面页脚。 可以限制地图的滚动,我们可以利用CSS...
    编程 发布于2025-02-19
  • 为什么使用Firefox后退按钮时JavaScript执行停止?
    为什么使用Firefox后退按钮时JavaScript执行停止?
    导航历史记录问题:JavaScript使用Firefox Back Back 此行为是由浏览器缓存JavaScript资源引起的。要解决此问题并确保在后续页面访问中执行脚本,Firefox用户应设置一个空功能以在window.onunload事件上调用。 pre> window.onload ...
    编程 发布于2025-02-19

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3