簡體   English   中英

Autotools和版本控制

[英]Autotools and version control

我知道,這一定是個愚蠢的問題。 假設我有一個使用autotools構建系統的庫。 我有所有configureconfigure.acMakefile.amconfig.h和我的項目根文件夾中的其他文件。 其中一些是由開發人員編寫的,另一些是由autotools生成的。

問題是:如果我使用版本控制系統(在我的情況下 - hg) - VCS應該跟蹤哪些autotools文件,哪些不應該(hgignore'd)?

謝謝,塞爾

我認為最好的方法是只將文件置於未生成的版本控制之下 - 使用VCS的人員是開發人員,並且應該在他們的機器上安裝autotools,檢入生成的文件只會給他們帶來麻煩。

另一方面,您必須確保所有生成的文件都已完成源級別分發,以便非開發人員能夠在不安裝autotools的情況下構建軟件。

這有兩種思想流派:

  1. “我希望看到項目與時間/版本X完全一樣”
  2. “我總能重新生成以后自動生成的任何內容”

我通常會親自落入后一組,但如果某些特定版本的構建系統存在問題,那么前者可能會很好,您可能還沒有安裝它們。

在你的例子中, configureconfig.h都是(可能)自動生成的,所以如果你要將它們包含在版本控制中,我也傾向於包含Makefile.in

在我的項目中,這通常意味着沒有比configure.acMakefile.am ,文件(如果它是GNU)和名為m4的目錄(包括我的configure.ac所需的任何自定義/非標准宏)更多的autotools相關文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM