Fortran在Linux上如何进行版本控制
导读:Linux下Fortran项目的版本控制实践 一 核心工具与准备 使用Git进行源码版本管理,配合GitHub/GitLab/Gitea托管远程仓库。 编译器与构建工具:安装gfortran、make、cmake,便于在不同机器上复现构建...
Linux下Fortran项目的版本控制实践
一 核心工具与准备
- 使用Git进行源码版本管理,配合GitHub/GitLab/Gitea托管远程仓库。
- 编译器与构建工具:安装gfortran、make、cmake,便于在不同机器上复现构建;在CentOS/RHEL系可用包管理器安装,在Ubuntu/Debian系亦同。
- 可选:使用**Fortran Package Manager(fpm)**管理模块与依赖,统一项目结构与构建流程,便于协作与发布。
二 仓库初始化与基本流程
- 初始化本地仓库并首次提交
git init git add . git commit -m "Initial commit" - 关联远程并推送
git remote add origin git@github.com:用户名/仓库名.git git branch -M main git push -u origin main - 日常开发节奏
git pull --rebase # 编辑、测试 git add < 变更文件> git commit -m "描述本次改动" git push - 忽略构建产物与编辑器文件(示例)
echo "*.o" > > .gitignore echo "*.mod" > > .gitignore echo "*.so" > > .gitignore echo "*.a" > > .gitignore echo ".vscode/" > > .gitignore echo ".idea/" > > .gitignore
三 与构建系统和FPM的协作
- 使用CMake时,将构建目录纳入**.gitignore**,仅提交源码与CMake配置:
echo "build/" > > .gitignore - 使用fpm时,典型项目结构如下,提交源码与fpm.toml即可:
常用命令:my_fpm_app/ ├── fpm.toml ├── src/ │ └── main.f90 └── test/ └── test_basic.f90
说明:fpm基于Git进行版本控制,使用fpm.toml管理项目元信息与依赖,支持GFortran/Intel Fortran/NVIDIA HPC SDK等多编译器,便于跨平台协作。fpm new my_fpm_app fpm build fpm test fpm run fpm install
四 多编译器与可复现构建
- 记录编译器与关键标志:在仓库根目录维护compiler.txt或使用CMake工具链文件,固化构建环境。
# compiler.txt 示例 gfortran 11.4.0 -O2 -g -Wall -fopenmp - 在Ubuntu上如需切换gfortran版本,可用update-alternatives统一管理:
sudo apt update sudo apt install gfortran-10 gfortran-12 sudo update-alternatives --config gfortran - 在CentOS/RHEL上安装并验证gfortran:
sudo yum install -y gcc-gfortran gfortran --version - 建议做法:在CI中分别用多个编译器与不同优化级别构建与测试,确保可复现性与稳定性。
五 协作规范与进阶建议
- 分支策略:采用main/develop分支模型;功能与修复使用短生命周期分支,合并前通过Pull Request进行代码审查与CI验证。
- 语义化提交:使用如Conventional Commits规范,便于生成变更日志与自动化版本管理。
- 持续集成:在**.github/workflows/ci.yml**或等效CI中执行构建与测试,覆盖常用编译器与关键路径。
- 版本发布:结合Git tag与变更日志进行版本标记;如使用fpm,可配合其打包与发布能力统一分发。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Fortran在Linux上如何进行版本控制
本文地址: https://pptw.com/jishu/752718.html
