热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何在MacOSX中自动化git提交

如何解决《如何在MacOSX中自动化git提交》经验,为你挑选了1个好方法。

我正在使用sublime txt编辑器为我的所有开发项目编写代码和源代码树,并且我经常在一天结束时提交我的更改并将它们推送到远程存储库,有时甚至更频繁,但我尝试在最后执行每个工作日.

有时我碰巧忘了承诺和推动.

是否有可能在我设定的时间和时间段以某种方式自动完成此操作?



1> Schwern..:

不要这样做.

版本控制不是备份系统.如果您需要备份系统,请使用一个.有许多免费的自动在线备份服务可供选择.一个简单的技巧是将项目文件放在Dropbox文件夹等中.

git中的提交是关于创建更改原因的记录.对于试图在将来理解您的代码的其他人(在六个月内可能是您),它必须是有用的.在它最基本的层面上,它必须回答"为什么这个代码以这种方式编写?"的问题.当您完成单个逻辑更改时,应该完成提交.修复了一个错误,添加了一个功能,更改了一个名称,等等.这会将更改拆分为易于查看的块,并且可以轻松描述您已完成的操作.如果提交只是你今天所做的一切,那对任何人都没有帮助.如果您记录当天所做的所有事情,那么提交将会过大,包含多个更改,并且很难确定哪些代码与更改有关.

作为上次代码工作的检查点,提交也非常有用.如果您只在所有测试通过时提交,则调试会更容易.什么打破了代码?东西git diff.如果你只是在一天结束时提交,你可能会提交破坏的代码.然后你失去了这个非常强大的调试技术.

Git有一个更强大的调试工具叫做bisect.它可以自动找到导致错误的提交.它依赖于每个提交都是工作代码的想法.

在一天结束时习惯性地推动甚至更糟.如果您的代码尚未准备好与他人共享,请不要推送它.

与Subversion不同,Git故意将提交和推送的概念分开.推动是在分享你的工作.即使在分支中,避免破坏代码也是非常重要的.项目中的其他人(包括未来的人)应该合理地期望他们所使用的代码可以工作.然后他们知道任何失败都是合并的错误.如果您始终不得不质疑共享存储库中的代码是否有效,那么它会大大减慢工作量.如果推送损坏的代码,推送会对其他人造成影响.

你可能会说"我一个人工作".这是一个非常糟糕的习惯.你不会一直独自工作.或者,如果你这样工作,也许你会!从现在起几个月或几年后你会看到你的代码而你将不记得为什么你这样编写它.

这个规则有一个小例外.持续集成服务(例如Travis)要求您推送代码来测试它.也就是说,您仍然提交逻辑更改,您仍然运行本地测试.


推荐阅读
  • 在MySQL中实现时间比较功能的详细解析与应用
    在MySQL中实现时间比较功能的详细解析与应用。本文深入探讨了MySQL中时间比较的实现方法,重点介绍了`UNIX_TIMESTAMP`函数的应用。该函数可以接收一个日期时间参数,也可以不带参数使用,其返回值为Unix时间戳,便于进行时间的精确比较和计算。此外,文章还涵盖了其他相关的时间处理函数和技巧,帮助读者更好地理解和掌握MySQL中的时间操作。 ... [详细]
  • 本文整理了Java中javax.media.opengl.GL.glFlush()方法的一些代码示例,展示了GL.glFlush()的具体用法 ... [详细]
  • Sublime Text通过快捷键在浏览器中预览文件
    2019独角兽企业重金招聘Python工程师标准首先说下,我的是SublimeText3,win10。ST有个插件ViewInBrowser可以在 ... [详细]
  • MATLAB字典学习工具箱SPAMS:稀疏与字典学习的详细介绍、配置及应用实例
    SPAMS(Sparse Modeling Software)是一个强大的开源优化工具箱,专为解决多种稀疏估计问题而设计。该工具箱基于MATLAB,提供了丰富的算法和函数,适用于字典学习、信号处理和机器学习等领域。本文将详细介绍SPAMS的配置方法、核心功能及其在实际应用中的典型案例,帮助用户更好地理解和使用这一工具箱。 ... [详细]
  • Dense Matrix Inversion Results in Segmentation Fault: Causes and Solutions ... [详细]
  • 本文探讨了资源访问的学习路径与方法,旨在帮助学习者更高效地获取和利用各类资源。通过分析不同资源的特点和应用场景,提出了多种实用的学习策略和技术手段,为学习者提供了系统的指导和建议。 ... [详细]
  • 利用源链接技术调试ASP.NET Core源代码的方法与实践
    本文详细探讨了通过源链接技术调试ASP.NET Core源代码的实用方法,旨在为开发者提供高效、准确的调试技巧,适用于学习和实际工作中遇到的相关问题。希望读者能从中获得有价值的参考和启发。 ... [详细]
  • 使用 `git stash` 可以将当前未提交的修改保存到一个临时存储区,以便在后续恢复工作目录时使用。例如,在处理中间状态时,可以通过 `git stash` 命令将当前的所有未提交更改推送到一个新的储藏中,从而保持工作目录的整洁。此外,本文还将详细介绍如何解决 `git stash pop` 时可能出现的冲突问题,帮助用户高效地管理代码变更。 ... [详细]
  • 如何正确配置Log4j以优化日志记录效果? ... [详细]
  • 本文详细介绍了如何在Java Web服务器上部署音视频服务,并提供了完整的验证流程。以AnyChat为例,这是一款跨平台的音视频解决方案,广泛应用于需要实时音视频交互的项目中。通过具体的部署步骤和测试方法,确保了音视频服务的稳定性和可靠性。 ... [详细]
  • 本文深入探讨了 Git 与 SVN 的高效使用技巧,旨在帮助开发者轻松应对版本控制中的各种挑战。通过详细解析两种工具的核心功能与最佳实践,读者将能够更好地掌握版本管理的精髓,提高开发效率。 ... [详细]
  • 在尝试为 Unity 编译一个简单的 Java 库时,运行 `ant jar` 命令后遇到了 Java I/O 异常。具体错误信息为“无法启动程序 ${aAPT},错误代码 2”,这通常表示指定的文件或目录不存在。此问题可能是由于环境配置不正确或路径设置有误导致的。建议检查相关路径和环境变量,确保所有依赖项都已正确安装和配置。 ... [详细]
  • PHP中元素的计量单位是什么? ... [详细]
  • 在 Go 开发环境中,通过使用 iTerm 和 Oh My Zsh,可以显著提升终端操作的效率和体验。Oh My Zsh 是一个强大的 Zsh 配置管理框架,提供了丰富的插件支持,如代码高亮、自动补全和多种编程语言支持,同时还拥有众多美观的主题,使终端界面更加个性化和高效。Zsh 作为一种高度可定制的 shell,不仅适用于交互式应用,还可用作脚本解释器,集成了 bash、ksh 和 tcsh 等其他 shell 的诸多优点,并具备独特的功能特性。 ... [详细]
  • 如何在MAC上配置Python和Appium开发环境
    一、需要安装的软件二、下载安装步骤2.1、安装jdk2.1.1JDK下载地址:https:www.oracle.comjavatechnologiesjavase-download ... [详细]
author-avatar
缅追逐暗夜的流星
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有