git: 上传本地仓库到github

引言

我们在项目开发的时候总是会产生大量的版本,可以使用git来进行版本管理。


git配置

我们可以通过以下指令查看git的配置信息:

git config --list  # 查看所有配置信息
git config  --system --list  # 查看系统配置
git config --global --list  # 查看用户配置

git是一款分布式版本管理工具,通常是多人共享一个远程仓库,因此每个人的主机需要有一个标识,这样远程仓库才能区分当前修改是由哪个人完成的。配置当前主机的用户和邮箱可用如下指令:

git config --global user.name "HelloWorld"  # 名称
git config --global user.email HelloWorld@gmail.com   # 邮箱

上传项目至本地仓库

如果只需要在本地进行版本管理,那么使用本地仓库就够了,如果需要上传至远程仓库,也需要先将项目上传至本地仓库。首先在项目目录下创建仓库:

git init

编写README.md文件,用于介绍该项目,.md文件编写采用markDown语法,具体可以参考我的另一篇博客常用Markdown语法简介

将项目目录下的文件设置为staged状态,相当于告诉git这些文件的版本需要被跟踪,使用以下指令:

git add .           # 所有文件
git add [filename]  # 指定文件

通常我们只希望跟踪项目下的部分文件,像数据集或者中间生成文件等不希望被跟踪,此时如果一个个git add [filename]会很麻烦,对此我们通常编写一个.gitignore文件,告诉git在执行git add . 指令时哪些应该被忽略。.gitignore的匹配规则如下:

a.txt          # 匹配所有a.txt文件,包括所有目录下的
*.txt          # 匹配所有.txt文件,包括所有目录下的
a/             # 匹配所有a目录,包括a/和b/a/
a/b/           # 只匹配a/b/目录而不是a/c/b/目录
a/a.txt        # 只匹配a目录下的a.txt,而不是a/b/a.txt
**/a           # 等价于a
**/a/b         # 匹配任意目录下,直接在a目录下的b文件或者目录
a/**/b         # 等价于a/b, a/x/b, a/x/y/b等等
               # *可以匹配任意长的字符,?可以匹配一个字符,[a-z]/[A-Z]可以匹配范围内的一个字符
               # 如果尾部有/那么只会匹配目录,否则同时匹配文件和目录
               # 如果一个目录下没有文件被跟踪,那么该目录不会被跟踪
! a/a.txt      # 除了a/a.txt,a目录下的其他目录文件都忽略,因为上面写了a/

可以通过status指令随时查看文件的状态:

git status             # 查看所有文件状态
git status [filename]

上传staged状态文件(暂存区)至本地仓库,变成Unmodify状态:

git commit -m "消息内容"

上传至远程仓库github

配置SSH公钥避免每一次上传都需要输入密码,在git bash下输入指令:

ssh-keygen -t rsa -C "邮箱"  # 生成公钥,-t rsa是加密算法,一路回车下去即可,会在对应目录下生成id_rsa.pub,windows是 C:\Users\admin\.ssh,

进入github,点击New SSH key,将id_rsa.pub中的内容复制进去。
在这里插入图片描述
输入以下指令,如果出现“Hi <github用户名>! You’ve successfully authenticated, but GitHub does not provide shell access.”表示配置成功。

ssh -T git@github.com

在github中新建一个仓库,请记住这个仓库对应的.git网址!

git branch -M main  # 将本地分支修改为main,本地分支默认为master,而远程分支默认为main,保持一致
git remote add origin git@github.com:XuanyuXiang22/xxx.git  # 设置上传仓库
git push origin main  # origin代表远程主机,将本地main分支推送到远程main分支

到这里应该就可以在github仓库中看到自己上传的内容了!!

其他参考

狂神说git
公众号笔记

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值