Windows下通过Git上传项目至Github

Posted 吕小猪不坏

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows下通过Git上传项目至Github相关的知识,希望对你有一定的参考价值。

简介

这里只介绍如何通过Git上传项目至Github,至于Github注册账号,在网站新建仓库、项目等就不讲解了。网站上可以将本地文件夹直接拖拽至仓库中,但是有文件夹数量限制,超过100个就无法上传,因此这里使用Git方式进行项目上传。

Git下载

官方的下载地址:https://git-scm.com/downloads/
安装教程:https://jingyan.baidu.com/article/7f766dafba84f04101e1d0b0.html
实际安装界面可能与此不同,只需要一路默认安装即可。

使用

转自 https://www.cnblogs.com/specter45/p/github.html

为Git绑定用户

打开git-bash.exe,在桌面快捷方式/开始菜单/安装目录中
因为Git是分布式版本控制系统,所以需要填写用户名和邮箱作为一个标识,用户和邮箱为你github注册的账号和邮箱,逐条输入回车

git config --global user.name "wangj"
git config --global user.email "wangj@163.com"

ps:git config –global 参数,有了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然你也可以对某个仓库指定的不同的用户名和邮箱。

为Github账户设置SSH Key

众所周知ssh key是加密传输。

加密传输的算法有好多,git使用rsa,rsa要解决的一个核心问题是,如何使用一对特定的数字,使其中一个数字可以用来加密,而另外一个数字可以用来解密。这两个数字就是你在使用git和github的时候所遇到的public key也就是公钥以及private key私钥。

其中,公钥就是那个用来加密的数字,这也就是为什么你在本机生成了公钥之后,要上传到github的原因。从github发回来的,用那公钥加密过的数据,可以用你本地的私钥来还原。

如果你的key丢失了,不管是公钥还是私钥,丢失一个都不能用了,解决方法也很简单,重新再生成一次,然后在github.com里再设置一次就行

生成ssh key

首先检查是否已生成密钥 cd ~/.ssh,ls如果有3个文件,则密钥已经生成,id_rsa.pub就是公钥

cd ~/.ssh
ls

如果没有生成,那么通过下面代码来生成。

ssh-keygen -t rsa -C "wangj@163.com"

1)是路径确认,直接按回车存默认路径即可
2)直接回车键,这里我们不使用密码进行登录, 用密码太麻烦;
3)直接回车键

生成成功后,界面上也汇显示生成的地址。去对应目录C:\\Users\\specter.ssh里(specter为电脑用户名,每个人不同)用记事本打开id_rsa.pub,得到ssh key公钥

为github账号配置ssh key

切换到github,展开个人头像的小三角,点击settings

然后打开SSH keys菜单, 点击Add SSH key新增密钥,填上标题,跟仓库保持一致吧,好区分。

接着将id_rsa.pub文件中key粘贴到此,最后Add key生成密钥吧。
至此,github账号的SSH keys配置完成。

建立本地仓库

常用指令

  git init //把这个目录变成Git可以管理的仓库
  git add README.md //文件添加到仓库
  git add . //不但可以跟单一文件,还可以跟通配符,更可以跟目录。一个点就把当前目录下所有未追踪的文件全部add了 
  git commit -m "first commit" //把文件提交到仓库
  git remote add origin git@github.com:wangjiax9/practice.git //关联远程仓库
  git push -u origin master //把本地库的所有内容推送到远程库上

接下来就是在本地操作了。找到你要上传的文件夹项目,右键点击文件夹(注意:不能选单个文件或者压缩包)在选项里会有选择Git Bash 会出现下图:

然后执行指令:git init

git init

初始化成功后你会发现项目里多了一个隐藏文件夹.git

这个目录是Git用来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了。

接着,将所有文件添加到仓库

执行指令:git add .

git add .

然后,把文件提交到仓库,双引号内是提交注释。
执行指令:git commit -m “提交文件”

git commit -m "version 1.0"

如此本地仓库建立好了。

关联github仓库

到github beautifulDay仓库复制仓库地址
然后执行指令:

git remote add origin git@github.com:wangjiax9/beautifulDay.git

上传本地代码,执行指令:

git push -u origin master

1)敲一个:yes, 然后回车

到此,本地代码已经推送到github仓库了,我们现在去githubt仓库看看。
注意:git是不能管理空的文件夹的,文件夹里必须有文件才能add

master提交项目到远程仓库出现“There isn’t anything to compare.”

转自:https://blog.csdn.net/nixiang_888/article/details/114458330
这是由于提交的分支与原有main完全不同导致系统不允许合并。首次,创建并提交本地项目到远程库,出现了“There isn’t anything to compare. main and master are entirely different commit histories.”。

解决办法(可能不是最优但可用)

# 切换分支至master
git checkout master
# 强制重命名master分支为main分支
git branch main master -f
# 切换分支至main
git checkout main
# 强制推送本地main分支至远程库,并覆盖远程main分支内容
git push origin main -f

参考
https://www.cnblogs.com/specter45/p/github.html
https://blog.csdn.net/qq_31852701/article/details/52944312

以上是关于Windows下通过Git上传项目至Github的主要内容,如果未能解决你的问题,请参考以下文章

本地新建项目上传至GitHub

git-将本地项目上传至github库

如何将本地项目上传至GitHub

如何将本地代码使用Git上传至Github

Windows下如何将一个文件夹通过Git上传到GitHub上(转)

如何创建Github账号及将本地项目上传至GitHub?