跳至主要內容

使用Git将本地代码提交到GitHub

ShenBourne大约 4 分钟安装教程GitHubGit

1.1 安装git

  1. 打开Windows下载界面open in new window,点击正文最前面的“Click here to download”超链接下载git(或者点击此处open in new window直接下载git)。

提示

其他操作系统请去Git官网open in new window自行选择下载版本

  1. 双击安装程序,其中选项全部保持默认即可。

  2. 安装完成后,在任一文件夹右键打开菜单,如果出现Open Git GUI hereOpen Git Bash here,则说明安装成功。

1.2 将选定仓库初始化为git仓库

  1. 在指定文件夹空白处右键鼠标,单击Open Git Bash here打开git终端,输入git init
git init

文件夹中出现.git文件,则说明初始化成功

1.3 将本地代码上传至git版本库

  1. 将本地代码放入暂存区,输入git add .
git add .

检查:输入git status文件都显示绿色即成功

git status
  1. 输入git commit -m '提交信息'把暂存区文件放到版本库中
git commit -m '提交信息'

如果没有创建用户信息,则会让你创建一个,账户密码随便填即可。例:

git config --global user.email "<>"

1.4 将本地git库与GitHub库连接

  1. 创建新的GitHub库

提示

为方便其他操作,一般建议将库命名为<username>.github.io(如图)

  1. 如果第一次使用,需要部署公钥(如果在最后一步将代码提交到github出现因为公钥报错,那就新建一个公钥)

生成公钥指令:

ssh-keygen -t rsa -C "*@*.com"    #邮箱可以任意填写

查看公钥指令:

cat ~/.ssh/id_rsa.pub    #查看之后copy 

GitHub线上添加公钥:项目仓库 > Settings > Deploy keys > Add deploy key

注意勾选“Allow write access”

  1. 本地仓库与远程仓库建立连接,添加远程源,这里我们采用ssh协议的remote源
git remote add origin <url>    #origin是远程源的名字

2. 提交和拉取远程仓库

提示

origin是远程源的源名,可以自定义;master是分支名,是默认的主分支

  1. 提交本地仓库代码到远程仓库 *若本地仓库名称改为“main”,则应将下文代码中的“master”改为“main”
git push -u origin master    
  1. 拉取远程仓库 *若本地仓库名称改为“main”,则应将下文代码中的“master”改为“main”
git pull origin master
Git错误 error: src refspec xxx does not match any / error: failed to push some refs to 解决方法

错误原因:GitHub仓库和本地Git仓库默认名不同。

(由于受到"Black Lives Matter"运动的影响,GitHub 从今年 10 月 1 日起,在该平台上创建的所有新的源代码仓库将默认被命名为 “main”,而不是原先的"master"。)

解决方法:把本地的 master 仓库名称修改为远端的 main。命令如下:

git branch -m oldBranchName newBranchName
Git错误 error:src refspec master does not match any 解决方法

错误原因

  • 本地需要提交的目录中存在空目录

  • 本地的origin和remote origin/master 没有建立关联

解决方法

  • 针对第一种错误情况,应在空目录中创建项目
touch README
git add README
git commit -m "change"
git push origin master
  • 针对第二种错误情况,应重新建立本地和远程关联
git remote remove origin
git remote add origin [email protected]:XXX/XXX.github.io.git
git push origin master

3. git 回滚到指定版本并推送到远程分支

-- 本地分支回滚到指定版本

git reset --hard <commit ID号> 

获取commit ID号的方法

复制下来的ji即为该版本的commit ID号

-- 强制推送到远程分支

git push -f origin <branch name>

出处:

提交本地代码到github - 只会玩辅助 - 博客园open in new window

Git 常见错误 之 error: src refspec xxx does not match any / error: failed to push some refs to 简单解决方法_error: src refspec master does not match any-CSDN博客open in new window