gpt4 book ai didi

version-control - 自动管理源文件中的许可证/作者/版本 header

转载 作者:行者123 更新时间:2023-12-04 11:56:54 28 4
gpt4 key购买 nike

通常,将一些带有作者,版本和许可证信息的行添加到源文件的顶部被认为是一种好习惯。例如,Gnu GPL v3建议添加

<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>

This program is free software: you can redistribute it and/or modify
it under the terms [SNIP]

我发现手动将其添加到每个文件中,并且在某些此类信息发生更改(新作者,著作权年份,版本变更)时必须不时更新所有文件,这很繁琐。

有没有一种方法可以自动管理它,这样我只需要在一个地方编辑这些东西就可以自动地对其进行复制?

如果需要,您可以假定我使用的是任何现代版本控制系统。

最佳答案

It is generally considered good practice to add some lines with author, version and license information to the top of source files.



那要看。首先,有两种(和更多种)方法可以做到这一点:
  • 管理每个文件的许可信息
  • 在中心位置管理许可信息

  • 如果您从头开始一个项目,则按文件方法通常很容易做到,同时又要保持清晰。在您写作时,随着时间的流逝,追踪事物变得越来越困难。因此,越来越多的项目切换到中心位置变体。

    逐个文件的方法的好处是可以清楚地确定工作范围。通常,您在文件注释中写入应用程序的名称。如果出于某种原因取出单个文件,则该信息仍然存在,并且文档链也没有中断。

    使用中心定位方法,好处是通常由您的版本控制软件(例如GIT)支持。提交可以由提交人签名,并可以给出作者。记录在案的人是谁自动编写了哪些代码,并且该信息存储在一个中央位置:VCS。

    随包保存一个COPYING文件,您可以在其中集中提供主要信息。您可以通过VCS轻松生成作者列表。并且每个文件都可以创建一个 header ,该 header 仅指定一个软件以及要查找的位置,仅提供一个粗略的轮廓:
    /**
    * Flux Deluxe v3.2.0 - Vector Drawing Redefined
    *
    * Copyright 2010, 2012 by its authors.
    * Some rights reserved. See COPYING, AUTHORS.
    */

    如果您在新的一年中发布了新版本,那么更新所有文件将是一件容易的事。

    关于version-control - 自动管理源文件中的许可证/作者/版本 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9990094/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com