作为IT工程师,我将为您详细介绍如何在Linux环境下为C++项目进行有效的版本控制。
# 在项目根目录执行
git init
对于C++项目,典型的.gitignore内容:
# 编译生成文件
*.o
*.a
*.so
*.out
*.exe
# 构建目录
build/
bin/
lib/
# IDE相关
.vscode/
.idea/
*.swp
*.swo
# CMake生成文件
CMakeCache.txt
CMakeFiles/
cmake_install.cmake
Makefile
# 添加文件到暂存区
git add .
# 提交更改
git commit -m "描述性提交信息"
# 查看状态
git status
# 查看提交历史
git log
main/master
: 稳定版本分支develop
: 开发分支feature/xxx
: 功能开发分支hotfix/xxx
: 紧急修复分支# 创建新分支
git branch feature/new-module
# 切换分支
git checkout feature/new-module
# 合并分支
git checkout develop
git merge feature/new-module
git remote add origin <远程仓库URL>
git push -u origin main
git pull origin main
git submodule add https://github.com/第三方库.git third_party/库名
find_package(Git)
if(GIT_FOUND)
execute_process(
COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE
)
add_definitions(-DGIT_HASH="${GIT_HASH}")
endif()
git mergetool
解决冲突# 撤销工作区修改
git checkout -- <file>
# 撤销暂存区修改
git reset HEAD <file>
# 回退到特定提交
git reset --hard <commit-hash>
通过以上步骤和实践,您可以有效地管理Linux C++项目的版本控制,确保代码的安全性和可追溯性。