Github 十大最佳实践

1、保护主分支不受直接提交的影响

    主分支中的任何一次提交都应该是可以直接部署的,所以永远不要直接提交默认分支,同时也是 Gitflow workflow 成为标准的原因。使用分支保护可以帮你防止直接提交,当然,所有的事情都应该使用pull requests来管理。

image

2、避免基础信息的混乱

    或许你在一个新的环境工作,或者你并没有注意到自己的 git 配置是不正确的,因此提交代码时伴随着错误的邮箱地址。如果提交没有关联到正确的用户信息,那将导致无法追溯到是谁写的代码。

    保证你的 git 客户端配置是正确的邮箱地址,并且关联到你的 github 账户。评审代码时注意检查你的pull requests是否存在无法识别的提交。

image

3、为每个仓库定义 CODEOWNERS

    使用 CODEOWNERS 功能可以定义哪些团队和人员被自动选为仓库的审阅者。此功能会自动请求仓库所有者进行审核。如今。组织拥有很多的仓库,而 CODEOWNERS 可以选择定义组织中的维护者。

image

4、从源代码中分离出秘密凭证

    在构建云原生程序时,我们保护了许多的机密信息,比如账户密码、API 秘钥、私人令牌、SSH 秘钥等。绝对不要将任何机密信息提交到你的代码中,而应该采用从安全存储外部注入的环境变量。

    你可以使用 VaultAWS Secrets Manager 之类的工具来管理产品中的机密信息。

    有很多超棒的工具可以识别代码中的机密信息,例如 Git-secrets 可以帮助你识别代码中的密码;使用 Git Hooks 可以构建一个预提交钩子,并检查每个pull requests中的机密信息。

image

5、不要提交项目的依赖

    将项目的依赖提交到仓库中会增加仓库的大小。应该将你项目的所有依赖都从仓库中移除,让你的包管理器负责去下载它们。如果你担心“依赖可用性”,可以考虑使用 JfrogNexus Repository 这样的二进制存储库管理器。

6、从源代码中分离配置文件

    建议不要将本地配置文件提交到版本控制器,通常这些都是你不想推送到远程的私有配置文件,因为它们包含机密信息。个人的偏好,历史信息等应该保存在本地环境中。

7、为项目创建一个有意义的 .gitignore 文件

    每个仓库都必须使用.gitignore文件来忽略预定义的文件和目录,它可以帮助你保护代码中的机密信息、依赖项和其他可能的差异。你可以从 Gitignore.io 选择相关的模板。

image

8、将死库归档

    随着时间的推移,由于各种原因,我们发现自已拥有不再维护的仓库。或许你为一个临时用例新建了仓库,或者有一些包含旧的和不相关代码的仓库。它们存在的问题是相同的,这些仓库在达到其目的之后不在被积极的维护开发,因此你不希望再维护它们或不希望其他人依赖/使用它们,最好的方式是将这些仓库归档,这样对每个人都是“只读”的。

image

9、锁定依赖包的版本

    你的依赖配置文件中包含所有软件包版本的信息,以便在每次安装应用程序时,在不破坏代码的前提下保持一致的结果。最好的方式是使用配置锁定文件来避免差异,并确定每次都获得相同的软件包版本。

image

10、对齐包版本

    虽然你使用的是相同的软件包,但是不同的版本会使得在不同项目中重用代码和测试变得困难。

    如果你有一个在多个项目中使用的包,请至少尝试在不同的仓库中使用相同的主要版本。

image

    原文链接:https://datree.io/blog/top-10-github-best-practices/

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值