第一次上传代码到GitHub

以前写代码没有涉及太多对比试验,也没有经历”从无到有“和”从粗略到精细“的过程,所以很少会用到GitHub,现在发现自己的代码版本需要迭代很多次,且需要备份(其实还有一点点原因是yjy在用,效仿一下我的计算机专家男朋友,这样假装我也是专家),所以开始了第一次上次代码到GitHub的尝试,详细的过程记录在此,以便以后随时查阅。

GitHub是基于git实现的代码托管。
GitHub可以免费使用,并且快速稳定。即使是付费帐户,每个月不超过10美刀的费用也非常便宜。
利用GitHub,你可以将项目存档,与其他人分享交流,并让其他开发者帮助你一起完成这个项目。优点在于,他支持多人共同完成一个项目,因此你们可以在同一页面对话交流。
创建自己的项目,并备份,代码不需要保存在本地或者服务器,GitHub做得非常理想。
学习Git也有很多好处。他被视为一个预先维护过程,你可以按自己的需要恢复、提交出现问题,或者您需要恢复任何形式的代码,可以避免很多麻烦。Git最好的特性之一是能够跟踪错误,这让使用Github变得更加简单。Bugs可以公开,你可以通过Github评论,提交错误。
在GitHub页面,你可以直接开始,而不需要设置主机或者DNS

1 创建仓库

1.1 登录github

进入github的官方网址:https://github.com,点击Sign in登录。
在这里插入图片描述

1.2 创建仓库repository

上图左侧有Create repository,点击进入。
在这里插入图片描述
“Owner”旁边的“Repository name”就是仓库名,是必填项。下面可以选公开还是私有,可以添加Readme、许可等。
然后跳转到这个页面:
在这里插入图片描述
使用提示的这些命令需要安装git客户端。

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

2 git下载

2.1 Windows

官方下载地址:https://git-scm.com/downloads
在这里插入图片描述
选择Windows:
在这里插入图片描述
接下来按照提示安装完成后,打开cmd,输入git -v,可以输出git版本。(因为我这个电脑安装过,所以没有下载图片里最新版的)
在这里插入图片描述

3 使用

3.1 绑定用户

git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"

我这里输入的是

使用下面的命令检查:

git config --global --list

在这里插入图片描述

3.2 本地代码与本地仓库关联

首先进入本地项目的根目录,在该目录下执行git init,这会创建一个隐藏的.git/文件夹,使该目录成为一个Git仓库。
在这里插入图片描述
可以通过git status查看提交记录和未跟踪文件。
在这里插入图片描述
图中红色的就是未跟踪的文件。

使用git add .git add 文件或目录名将对应目录及子目录添加到暂存区(“.”是所有文件的通配符)。
在这里插入图片描述

接下来创建第一次提交,在本地生成一个提交记录。

git commit -m "<提交说明>"

在这里插入图片描述
在第一行提示信息中可以看到提交到了master分支上(关于分支后面会有详细介绍)。

3.3 本地仓库与远程仓库关联(http方式)

之前在GitHub上创建好仓库后,会有自己的仓库地址:
在这里插入图片描述
仍然是在本地目录使用git remote add <新建远程源名> <HTTPS方式>将远程仓库地址设置为远程源, 并命名。

git remote add origin https://github.com/Dangerous357/Schedule.git

使用git remote -v查看:
在这里插入图片描述
将本地提交推送至远程仓库:

git push -u <远程源名> <分支>

会提示需要输入用户名密码登录:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里要么就是超时,要么就是连不上:
在这里插入图片描述
因此我更换为使用SSH的方法配置。

3.4 本地仓库与远程仓库关联(SSH方式)

(1)密钥生成与设置

使用 SSH 方式推送/拉取代码,可以避免每次输入用户名和密码(Token)。

打开本地终端执行:

ssh-keygen -t ed25519-C "你的邮箱@xxxx.com"

一路回车,默认会在用户主目录下生成.ssh/id_ed25519(私钥)和 .ssh/id_ed25519.pub(公钥)两个文件。

-t是密钥类型:这里是引用

生成完成后,windows执行以下命令查看公钥内容(以管理员身份进入终端,注意要到C盘目录下):

more ~\.ssh\id_ed25519.pub

linux执行以下命令查看公钥内容:

cat ~/.ssh/id_ed25519.pub

到GitHub主页右上角头像选择设置:
在这里插入图片描述
然后左侧找到SSH and GPG keys进入:
在这里插入图片描述
点击New SSH key新增SSH密钥,Title可以自定义,将公钥复制粘贴到下面的文本框中,最后点击Add SSH key确认添加。
在这里插入图片描述
在这里插入图片描述
这里注意公钥文件里面的全部内容都要复制,不要只复制中间的部分。

最后验证:

ssh -T git@github.com

在这里插入图片描述
这里可能网不好需要连接多次噢~

(2)将本地仓库与远程仓库连接

之前在GitHub上创建好仓库后,会有自己的仓库地址:
在这里插入图片描述
仍然是在本地目录使用git remote add <新建远程源名> <SSH方式>将远程仓库地址设置为远程源, 并命名。

git remote add origin git@github.com:Dangerous357/Schedule.git

我这里需要先删掉之前添加的连接:

git remote remove origin

使用git remote -v查看:
在这里插入图片描述
将本地提交推送至远程仓库:

git push -u <远程源名> <分支>

在这里插入图片描述
无需输入密码。刷新GitHub可以看到仓库里有代码了。

3.5 后续提交

第一次git push的时候需要使用-u将本地分支与远程分支建立跟踪关系,后续直接使用git push即可。如果对代码做了修改,需要先将代码提交到本地仓库,然后按照之前的流程再来一遍。
在这里插入图片描述
红色的就是需要使用add方法的,变成绿色才可以使用commit方法。

4 注意事项

4.1 拉取远程更改

如果远程仓库有了新的提交(多人协作时常见),在推送之前,可以先拉取远程更新:

git pull --rebase <远程源名> <分支>

带 --rebase可以保持提交历史线性;不带则会自动创建一个合并提交(Merge commit)。

如果你在新建仓库时勾选了“初始化 README”,远程仓库就会自带一个提交记录。这时本地一开始是空的,假如你直接执行git push会被拒绝(提示需先拉取远程更改)。解决方法是先执行:git pull --rebase <远程源名> <分支>把远程的那次提交拉下来并合并到本地,然后再git push。

4.2 git push time out

可以在Git配置中增加超时时间的设置。例如,修改git config中的http.lowSpeedLimit和http.lowSpeedTime值。例如:

git config --global http.lowSpeedLimit 1000
git config --global http.lowSpeedTime 60

4.3 分支管理

默认情况下是在主分支maste分支上工作,也可以将主分支命名为main,执行:

git branch -M main

这样与GitHub通用约定保持一致。

如果想开发新功能、修复Bug,通常会新建分支:

git checkout -b feature/<新分支名称>

开发完成后,切回main分支:

git checkout main

然后合并分支:

git merge feature/<新分支名称>

然后删除该分支:

git branch -d feature/<新分支名称>

参考来源:
@AIGC
手把手教你用git上传项目到GitHub(图文并茂,这一篇就够了),相信你一定能成功!!
完整教程:从零开始,学会上传,更新,维护github仓库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值