1.git一份代码提交多个git远程库中
通过git remote add可以添加远程库,如下:
git init
git add README.md
git commit -m "first commit"
git remote add Ceres https://tokenA@github.com/mynameA/repository.git
git push Ceres master # 将本地的master分支上传到远程库Ceres中
git remote add Mars https://tokenB@github.com/mynameB/repository.git
git push Mars master
说明1:
git push -u origin master
相当于以下两个:
git branch --set-upstream-to=origin/master master // 将远程仓库origin的master分支与本地仓库master分支绑定
git push origin master
由于我们需要将一份已经写好的代码提交到两个git远端,所以不用-u参数进行绑定。
说明2:
我们常见的远程名origin,也只不过是个通过git remote add添加的远程库的名字,只是习惯写成origin。
说明3:
git remote -v # 可以看到已存在的远程库
上面命令创建了名为Mars和Ceres的远程库,并通过push命令将一份已经写好的代码提交到两个git远端。
在git remote add命令中涉及到token的概念,这是由于github在2021年8月之后,不再支持新的仓库使用密码上传文件,而是通过token这个东西来上传,下面介绍以下token的获取过程。
2.tokenA和tokenB的获取
查找access_token的步骤如下:
1、在github页面的右上角,单击您的个人资料照片,然后单击 Settings(设置) 。
2、在左侧边栏中,单击 Developer settings。
3、在左侧边栏中,单击 Personal access tokens(个人访问Tokens) 。
4、点击 Generate new token(生成新Tokens) 。
5、设置名称,token过期日期,以及权限。
6、点击生成即可。
7、记得将生成的token复制并且存储下来,因为处于安全原因当您离开该页面之后,token将不再显示。
参考:将一份已经写好的代码提交到两个git远端
链接1
链接2
3.一个远端用来周期备份,一个远端用来版本管理
还没弄完,以后再说。。。
使用git开发时,一般分为四种分支,请参考:git四种分支 及其使用。为了方便我这里只设置三种分支:main(也可以叫master)、dev和其他。
平时就在“其他分支”上进行修复bug、功能添加等操作,使用脚本每隔一天将“其他分支”上传到github一次。
编写脚本autoupdate.sh用来周期性执行备份操作:
#! /bin/bash
git switch feature-balabala
git add .
git commit -m "`date '+%D'`"
git push Mars feature-balabala:feature-balabala
说明:
git push 命用于从将本地的分支版本上传到远程并合并。
命令格式如下:
git push <远程主机名> <本地分支名>:<远程分支名>
如果本地分支名与远程分支名相同,则可以省略冒号:
git push <远程主机名> <本地分支名>
2>autoupdate.err?
再用 crontab 软件来设定定时运行程序
crontab -e # 进入编辑器编辑代码
0 0 * * * /bin/bash /path/to/bkcode/autoupdate.sh 2>autoupdate.err # 每天凌晨12点执行autoupdate.sh这个代码
利用Ubuntu发邮件失败。。。。。