CentOS文件版本控制实操指南
一、方案总览
二、使用 Git 进行本地与远程版本控制
sudo yum install -y gitgit config --global user.name "Your Name" 与 git config --global user.email "you@example.com"git initgit add . 与 git commit -m "Initial commit"git remote add origin <repo-url>;推送:git push -u origin main(若主分支名为 master,则替换为 master)git pull origin main 拉取更新;git status、git log 查看状态与历史git reset --soft HEAD~1:仅回退版本库指针,保留暂存区与工作区git reset --mixed HEAD~1(默认):回退版本库与暂存区,工作区保留修改git reset --hard HEAD~1:版本库、暂存区、工作区全部回退(慎用).gitignore 管理产物与敏感文件三、使用 SVN 集中式版本控制
sudo yum install -y subversionsvnadmin create /svnRepositories/demopasswd:定义用户与密码,如 zhangsan = 123456authz:定义权限,如 [/] zhangsan=rwsvnserve.conf:启用 anon-access = read、auth-access = write、password-db = passwd、authz-db = authzsvnserve -d -r /svnRepositories/demo(默认端口 3690)svn checkout svn://<ip>/demo ./;svn add <file>;svn commit -m "msg"hooks/post-commit 中写入:/usr/bin/svn update /www/wwwroot/demo --username zhangsan --password 123456,实现提交后自动更新站点目录四、使用 inotify 实现自动提交(进阶)
sudo yum install -y inotify-tools git#!/usr/bin/env bash
MONITOR_DIR="/path/to/project"
cd "$MONITOR_DIR" || exit 1
inotifywait -m -r -e modify,attrib,close_write,move,create,delete \
--format '%w%f' "$MONITOR_DIR" | while IFS= read -r file; do
git add "$file"
git commit -m "Auto: $file"
# 如配置了远程:git push origin main
done
五、如何选择与实践建议