anaconda下利用git维护github仓库
anaconda下利用git维护github仓库
说实话,windows下利用github客户端维护github仓库是非常方便的,唯一不方便的是github客户端的下载安装,每次换电脑或重装系统都要装一遍实在是麻烦,索性用命令行得了。
win下利用anaconda安装python环境是本人常用的环境,因此利用anaconda来安装和使用git完全是顺便的事。下面根据具体的问题来说明:
环境准备和git安装
-
首先安装anaconda
-
在anaconda中安装git,命令为:
conda install git
维护github仓库
fork github仓库
由于是维护其他同志的仓库,所以第一步要做的fork仓库,在github网站找到对应的仓库,fork为自己的仓库。
本地的维护
以chinese-erj的latex模板为例
- 首先下载仓库:
git clone https://github.com/hushidong/Chinese-ERJ
结果为:
(base) C:\Users\hzzma>git clone https://github.com/hushidong/Chinese-ERJ
Cloning into 'Chinese-ERJ'...
remote: Enumerating objects: 69, done.
remote: Counting objects: 100% (69/69), done.
remote: Compressing objects: 100% (50/50), done.
remote: Total 69 (delta 29), reused 58 (delta 18), pack-reused 0
Unpacking objects: 100% (69/69), done.
如果库太大,那么可以仅下载最近一次的commit
比如:
#或只clone最近1次commit
git clone --depth=1 https://github.com/hushidong/biblatex-gb7714-2015
- 进入当前仓库目录:
cd Chinese-ERJ
- 跟踪当前仓库目录下的所有文件:
git add .
- 修改需要修改的文件,使用win下的默认编辑器打开
chinese-erj.cls
修改完成后保存。
利用git add 命令将修改保存到暂存区:
git add .
- 查看修改状态:
git status
可以看到:
(base) C:\Users\hzzma\Chinese-ERJ>git status
On branch master
Your branch is up to date with 'origin/master'.
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: chinese-erj.cls
其中说明chinese-erj.cls已经修改。
- 查看已暂存的修改的内容
git diff --staged
可以看到修改的内容,利用esc和q键退出。
- 提交修改:
git commit
需要填写commit的说明,命令行操作方法与vim类似,要输入信息,需要按ins键,输入完成后,将光标移动到内容末尾,按esc,输入:wq即可。
- 推送修改
git push
将本地提交的修改推到github上,需要输入github用户名和密码。
需要注意的是2021年8月以后,github网站不再支持git用密码的验证形式,而是要用Personal access tokens。其实本质是一样的,就是在网站上生成它,这是一串字符串,保存下来,当需要输入密码的时候用它输入即可。
- 在github网站上查看修改
进入:https://github.com/hushidong/Chinese-ERJ 查看
在github网站上发起pr
进入 https://github.com/hushidong/Chinese-ERJ
点击:new pull request
点击:create pull request
完成后,等待仓库作者合并即可。
##如果不小心删除了某文件要从远程找回来
git reset HEAD init.py
git checkout init.py
git reset HEAD deck.py
git checkout deck.py
##如果想撤销commit
git reset --soft HEAD~1
HEAD~1的意思是上一个版本,也可以写成HEAD^
如果你进行了2次commit,想都撤回,可以使用HEAD~2
小结
通过上述实践表明,在命令行下进行维护操作其实也挺简单,熟悉了以后还是很方便的。但利用anaconda下的git工具就避免了下载github客户端带来的麻烦,好处也是明显的。
更多推荐
所有评论(0)