前面注册gitee和基本配置请参考帖子:《gitee使用教程,创建项目仓库并上传代码》、《同一台机器配置多个SSH,同时绑定Coding,Github和Gitee》、《不会码云Gitee怎样实战使用?看完它你就知道了》。
$git config --global user.name "xxx" //配置用户名
$git config --global user.email "xxx" //配置注册邮箱
$git config --global --list //查看当前用户(global)配置
$git config --global --edit
user.name=zhxnlp
user.email=xxx@gmail.com
http.postbuffer=524288000
配置免密访问 Gitee.com 。为了能够向刚创建的仓库提交代码,需要配置加密的密匙到 Gitee.com ,在实现通信加密的同时,不需要用户每次都验证账号输入密码。
cd ~/.ssh
ssh-keygen -t rsa -b 4096 -C "[email protected]"#生成 github_rsa公钥
ssh-keygen -t rsa -C "[email protected]"#生成 gitee_rsa公钥
在提示Enter passphrase 和 Enter same passphrase again : 都按回车
在提示“Enter file in which to save the key” 时分别输入github_rsa和Gitee.rsa。
注意:这里的[email protected]只是生成的 sshkey 的名称,并不约束或要求具体命名为某个邮箱。
在.ssh目录中,touch ~/.ssh/config
新建两个文本文件 config 和 known_hosts。在 config 文件中加入以下内容:
# gitee 指定私钥路径
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
User zhxnlp
ssh -T [email protected]
Github Pages
服务。我们需要在该仓库页面中 点击“服务” > Gitee Pages > 勾选“强制使用HTTPS” > 点击“启动”即可。新建gitee文件夹,打开git bash,输入git clone [email protected]:zhxscut/nlp-transformers.git
。
git clone后面地址就是仓库的ssh地址:
之后就是正常提交环节。(我的gitee仓库是已经有文件了,本地克隆后没有再git init初始化)
cnpm install hexo-deployer-git --save
在站点配置文件中修改如下配置:
deploy:
type: git
repo: https://github.com/guanmianli/guanmianli.github.io.git # 仓库地址
branch: master # 部署分支
注意:部署分支要和我们远端仓库的部署分支对应,没设置的话Hexo会自动创建一个分支作为部署分支。
我们也可以设置同时部署到Github和Gitee:
deploy:
type: git
repo:
github: https://github.com/zhxnlp/zhxnlp.github.io
gitee: https://gitee.com/zhxscut/blog.git
branch: mian
在博客根目录中执行以下命令完成部署:
hexo clean && hexo g && hexo d
对于Gitee Pages,由于不支持自动更新,每次执行命令部署后需要手动点击更新,等待更新完成后访问地址即可看到效果。
初始化本地仓库,推送到空的git 仓库。
create a new repository on the command line
echo "# nlp-transformers" >> README.md
git init#本地仓库初始化
git add README.md
git add .#添加当前目录所有文件
git commit -m "first commit"
#此时本地仓库默认分支是master,直接提交需要合并到远程仓库mian,比较麻烦
git branch -M main#将本地仓库默认改为mian分支
git remote add origin https://github.com/zhxnlp/nlp-transformers.git
git push -u origin main
推送现有本地仓库
#git remote add origin https://github.com/zhxnlp/nlp-transformers.git
#git branch -M main
git pull origin mian
git push -u origin main
git rm -r --cached filename#取消提交缓存
git config core.autocrlf false#把windows格式(CRLF(也就是回车换行))转换成Unix格式(LF)。
每次提交貌似都要全部提交,即git add.
如果在使用命令 git remote add
时报错:
git remote add origin git@gitee.com:linxinfa/mytest.git
fatal: remote origin already exists.
说明本地库已经关联了一个名叫 origin的远程库,此时,可以先用git remote -v查看远程库信息:
git remote -v
origin git@gitee.com:linxinfa/mytest.git (fetch)
origin git@gitee.com:linxinfa/mytest.git (push)
我们可以删除已有的远程库git remote rm origin
再关联远程库git remote add origin [email protected]:linxinfa/mytest.git
git add . #添加当前目录所有文件
git status #查看状态
git commit -m "first commit"
git rm --cached filename #移除这个文件缓存
git log # #查看所有产生的 commit 记录
git commit -am . #add和commit合并
git branch a #新建分支a
git checkout a #切换分支a
git checkout -b a #新建并自动切换分支
git branch -d #删除分支。如果a分支的代码还没有合并到master,则无法删除
git branch -D #强制删除分支
fatal: bad boolean config value '“false”' for 'http.sslverify
从仓库克隆到本地时报错,是因为config --list的最后一行为false。输入git config --global --edit
将最后一行删掉。
error: RPC failed curl 56 OpenSSL SSL read Connection was reset
。git clone时出现错误原因是curl的postBuffer的默认值较小,需要在终端调整为到合适的大小,这里调整到500M
git config --global http.postBuffer 524288000
#之后可以输入以下命令查看
git config --list
unable to access ‘https:...‘: OpenSSL SSL_read: Connection was reset, errno 10054
。使用git clone 指令获取github项目时报错。解决方法,将url链接地址中的https改写为git。push时报错可以重启git bash。
git clone https://github.com/....git
Cloning into 'vue'...
fatal: unable to access 'https://github.com/....git/': OpenSSL SSL_read: Connection was reset, errno 10054
git clone git://github.com/....git
push时失败报这个错:
解决方法一:取消 git 对 SSL 的检验:git config --global http.sslVerify "false"
解决方法二:在git隐藏文件夹下:将 .git/cofig 文件中的 url 进行修改
url = https://github.com/zhxnlp/nlp-transformers.git
改为url = [email protected]:zhxnlp/nlp-transformers.git
执行 :git update-git-for-windows
执行后,会更新git git更新 重新push的界面如下
这样只要你网页等登录github ,就可以登录了
remote: Support for password authentication was removed on August 13, 2021.(SSH令牌解决法)
大意:远程:2021 年 8 月 13 日移除了对密码身份验证的支持。请改用个人访问令牌。
即github不支持密码验证的方案了,用personal access token
代替。
在Github上生成token
GitHub 帐户,转到Settings => Developer Settings => Personal Access Token => Generate New Token (Give your password) => Fill up the form(选择所有选项) => Generate token =>复制generated Token。它将类似于ghp_sFhFsSHhTzMDreGRLjmks4Tzuzgthdvfsrta(刷新就看不到了,要及时保存)
将本地的凭证改为Personal Access Token
控制面板 -> 凭据管理器(或者直接控制面板搜索凭证打开) -> Windows凭据 -> 找到git:https://github.com
,将凭据改为前面生成的token即可。
之前没有github凭证的,单击添加通用凭据=> 互联网地址将是git:https://github.com
,用户名为gith邮箱。密码是GitHub 个人访问令牌。
git commit 提交不了 error: pathspec 'project'' did not match any file(s) known to git.
在Linux系统中,commit信息使用单引号,而windows系统,commit信息使用双引号。
所以在git bash中git commit -m ‘提交说明’ 这样是可以的,但是在win命令行中就要使用双引号
error: failed to push some refs to ''xxx.git'
报错:hint: Updates were rejected because the remote contains work that you do
估计是本地和远程仓库代码不一致冲突了。
git push origin master -f
强制覆盖远程仓库git pull origin mian
git push origin main
warning: LF will be replaced by CRLF inXXX
git add时报错The file will have its original line endings in your working directory,warning: LF will be replaced by CRLF in 软件应用、论文、杂类/GitHub 详细教程 .md。
解决办法: git config --global core.autocrlf false
。
Markdown All in One
插件,安装Markdown All in One: Create Table of Contents
,回车