云笔记制作心得: 从开始摸索,到现在基本实现个人云笔记功能,其中走了不少弯路,刚开始也尝试过一些云笔记功能的软件,例如印象笔记、有道云笔记等,但是总不尽人意,收费是一方面,最主要的是笔记风格不太适合自己,自己喜欢那种随心所欲的记笔记感受,不喜欢被有所约束。其中在深入接触了基于Markdown语法的Typora笔记软件之后,才知道自己找到了自己想要的,能够结合Gitee和GitHub对于程序员来说应该是很友好的,尽管当初学习Markdown语法费了不少功夫,但是现在能够无障碍的使用Markdown语法记笔记感到也是值得的。虽然Typora也收费了,但是这不影响我的使用,只要思想不滑坡,方法总比困难多。
生成SSH公钥:
# 1.首先配置git的环境变量
# 2.在windows控制台输入git命令,-t指定用那种加密算法,这里使用rsa非对称加密算法,-C是一个描述,针对哪一个账号进行使用(xxxxx@xxxxx.com是SSHKey的名称,可以使用一个邮箱。):
ssh-keygen -t rsa -C "xxxxx@xxxxx.com"
# 3.三次回车(默认公钥保存的文件夹,不设置每次上传的密码,确认密码)
# 4.通过git命令,查看文件内容,获取到你的public key公钥:
cat 公钥的上层目录/.ssh/id_rsa.pub
# 5.将公钥添加到gitee中
文件上传步骤:
# 1.打开git-bash.exe,切换到需要上传文件的目录下(路径中如果有空格,需要将目录名用引号引起来,不然会报错bash: cd: too many arguments),输入git命令:
cd d:/Typora/yydongsq
# 2.依次输入git命令,配置全局变量:
git config --global user.name "yydongsq"
git config --global user.email "yydongsq@126.com"
# 3.输入git命令,初始化生成.git目录(这个隐藏的目录是Git用来跟踪管理版本库的):
git init
# 4.输入git命令,将本地仓库和gitee上的仓库关联,git@gitee.com:yydongsq/typora.git代表SSH的地址,在gitee仓库中复制:
git remote add origin git@gitee.com:yydongsq/typora.git
# 5.输入git命令,将所有文件添加到暂存区:
git add .
# 6.输入git命令,把暂存区的代码更新到本地版本库中,"XXXXX"代表每次提交的说明文案,或者历史版本的说明:
git commit -m "XXXXX"
# 7.输入git命令,将本地仓库推送到服务器仓库,master代表gitee仓库的分支:
git push -u GiteeTypora master #加了参数-u后,以后即可直接用git push 代替git push GiteeTypora master
本地笔记更新后自动上传Gitee或GitHub远程库shell脚本: 创建以.sh结尾的shell脚本文件,内容如下。
#! /bin/bash
cd D:/Typora/yydongsq
echo "---------------本地库状态---------------"
git status
echo "---------------本地库状态---------------"
while :
do
read -r -p "是否继续操作? [Y/N] " input
case $input in
[yY][eE][sS]|[yY])
createAt=$(date "+%Y-%m-%d %H:%M:%S")
echo "---------------拉取Gitee远程库---------------"
git pull GiteeTypora master
echo "---------------拉取成功---------------"
git add .
echo "---------------开始提交---------------"
git commit -m "${createAt}"
echo "---------------提交成功---------------"
echo "---------------推送Gitee---------------"
git push GiteeTypora master
echo "---------------推送成功---------------"
echo "---------------推送GitHub---------------"
git push GitHubTypora master
echo "---------------推送成功---------------"
;;
[nN][oO]|[nN])
echo "---------------操作结束---------------"
sleep 1
exit 1
;;
*)
echo "输入错误,请重新输入"
;;
esac
done