初始化
# 以当前目录为项目创建仓库
git init
# 创建一个目录作为项目仓库
git init [name]
提交至暂存区
git add [file]
git commit -m [msg]
分支
# 创建分支
git branch [name]
# 查看分支,-r:远程分支,-a:所有分支
git branch 参数
# 切换分支
git checkout 分支名
# 删除本地分支
git branch -d [BranchName]
# 删除远程分支
git push origin --delete [BranchName]
同步
# 添加远程仓库
git remote add [仓库] [仓库url]
# 同步
git push [仓库] [分支]
# 同步到本地
git pull [仓库] [分支]
其他
加上--global
表示全局,不加就仅针对当前项目
# 合并分支
git branch -M/m [name]
# 缓存账号密码
git config --global credential.helper store/cache
#可以更改默认的密码缓存时限
git config --global credential.helper 'cache --timeout=36000'
创建仓库时会出现的提示
…or create a new repository on the command line
echo "# testing" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/JavaBullShit/testing.git
git push -u origin main
…or push an existing repository from the command line
git remote add origin https://github.com/JavaBullShit/testing.git
git branch -M main
git push -u origin main
Hugo静态博客分支分工流程
使用工具生成静态博客,git初始化。 设置两个分支
- sources:保存源文件
- html:保存静态网页
源文件目录命令:
git init
git config ...(用户&邮箱$缓存)
git branch -M source
git add *
git commit -m "msg"
git remote add origin [url]
git push origin source
网页目录命令:
git init
git config ...(用户&邮箱$缓存)
git branch -M html
git add *
git commit -m "msg"
git remote add origin [url]
git push origin html
假设写了一篇文章,生成静态网页后。 在源文件目录执行:
git add *
git commit -m "msg"
git push origin source
在网页文件目录执行:
git add *
git commit -m "msg"
git push origin html
命令还是太多了,封装一下,分别封装spush
和hpush
两个命令
以后只需要做三步:
- 写文章,hugo一下
- 源文件目录,执行
spush
- 网页文件目录,执行
hpush
还是有点麻烦,直接把spush和hpush合并更好
除了自动push到两个分支,还可以自动push到两个repo,不过还是用分支比较好
或者修改生成器
修改生成器,把所有的网页的生成目录全部生成在根目录,这样就不需要分支了,源文件和网页文件都存放在一起,不过这样有点乱,如果是mkdocs那种,就只有两个目录的就完全不会乱了。
如果修改之后出bug,还可以走另一条路,写个shell脚本,在hugo生成之后把public目录的文件全部移出来。
2022-3-3后续更新
不用修改生成器,原本就支持指定目录输出
详情在3-3今天发布的文章