git学习一:第一次使用Git上传本地项目到github上(很详细,很全面),ideal上传。分支讲解(22年GitHub更新了密钥方式,已更新)


我觉得学习github的人基本上已经快要脱离了小白的标签,虽然我一直喜欢自称为小白。对于程序员原来说应该都听说过GitHub,GitHub有许多开源的的项目和一些前沿的技术。因为自己在第一次使用过Git和github时遇到过不少的坑,所以,想对第一次使用Git上传代码做一下总结,以免使自己忘记,也算是分享给大家一点小小的经验,不足的地方还请大家多多指教。
先介绍一下Git以及github

一、github和Git是什么

1、什么是Git

       githubGit(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
       说的明白一点,Git一般放在客户端,用于连接本地仓库和github远程仓库。Git作为一个中间的中间件。去连接远程github。

2、什么是github

      github是一个开源代码库以及版本控制系统。GitHub可以托管各种git库,并提供一个web界面。
      gitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名gitHub。

二、 下载Git软件

https://git-scm.com/downloads
在这里插入图片描述

三、Git安装

安装就很简单了,一路下一步就可以了。全部默认。
安装完成后鼠标右击 或者 开始->程序会出现,打开Git Bash,进入bash界面。

接下来是重点,若这一步没有通过的话;秘钥没有认证完成,就不能上传文件,这个已经踩坑了,一直英语提示tell who are you ;

使用git -v 查看命令版本,即查看是否安装成功。
在这里插入图片描述

四、注册邮箱

  1. 配置用户名,在git bash界面输入如下内容即可完成用户名,邮箱的注册(说明:双引号中需要你的用户名,这个可以随便输入,比如“fengfanli”):

    $	git config --global user.name "user.name"
    
  2. 配置邮箱(说明: 双引号中需要输入你的有效邮箱,比如“897961047@qq.com”)

    $ 	git config --global user.email "yourmail@youremail.com.cn"
    

    在这里插入图片描述

五、查看是否存在密钥ssh keys

1、win 系统查看

执行命令:

$ cd ~/.ssh

在这里插入图片描述
若出现“No such file or directory”,则表示需要创建一个ssh keys。
我的秘钥已经设置过,如下面的状态:
在这里插入图片描述

2、mac 系统查看

mac下 Github添加SSH keys:https://blog.csdn.net/weixin_43347550/article/details/119742921#

六、如果不存在,则创建新的ssh keys

如果没设置,就设置新的ssh keys,不然git不能上传文件。

  • 生成密钥格式如下:

    ssh-keygen -t rsa -b 4096 -f ~/.ssh/your_key_name -C "your_email@example.com"
    # -t rsa:指定生成 RSA 密钥
    # -b 4096:指定密钥长度为 4096 位。
    # -f ~/.ssh/your_key_name:指定生成的私钥和公钥文件的名称,这里文件会被保存在 ~/.ssh/ 目录下,名称为 your_key_name(不包括扩展名,.ssh 会在生成时自动添加)。
    # -C "your_email@example.com":提供一个注释,通常是你关联的电子邮件地址。
    
    
  • 我的输入如下:

    ssh-keygen -t rsa -C "897961047@qq.com"
    
  • 流程如下:
    输入命令点击回车,可以指定目录,例如:C:\deskbook\(说明:若在此处不输入路径,而直接按回车,则ssh keys生成后存放的路径为C:\User\.ssh
    这里选择默认 直接回车 输入密码
    输入密码: 123456
    确认密码: 123456
    完成后,在C:\User\ .ssh文件夹中生成 ssh keys。包括两个文件rd_rsaid_rsa.pub

    在这里插入图片描述

    下面这个图是我后来重装系统后又补的,会发现里面存的路径(密码可以不输入,一般不用,但是用处也很大)20221104记:

    在这里插入图片描述

  • 执行上述命令后,ssh-keygen 会生成两个文件:

    1. ~/.ssh/your_key_name(私钥文件)
    2. ~/.ssh/your_key_name.pub(公钥文件)
  • 通过命令查看生成的秘钥,也就是自动生成本地文件 id_rsa.pub 中的内容

    cat ~/.ssh/id_rsa.pub
    

    在这里插入图片描述

  • 填入到GitHub中的SSH的列表
    然后找到 rd_rsaid_rsa.pub 所在目录打开 id_rsa.pub(可以把后缀名改成 .txt )。
    登录自己的GitHub账号,找到Settings,

    在这里插入图片描述
    进入Settings后,点击SSH and GPG keys,然后再点击右上角添加新密钥按钮New SSH key,
    在这里插入图片描述

    然后,将idb_rsa.pub里的内容拷贝到Key内,Title内容随便填,一般见名知意,确定即可。

    在这里插入图片描述

密钥添加完成,下次在使用时就不需要再添加密钥了。

七、第一次上传文件到仓库

1、首先创建Github远程仓库。

可以直接点New repository来创建,比如我创建了一个testDemo的仓库.进入仓库
在这里插入图片描述
复制下本仓库的链接地址,后面会用到。

2、新建 git本地仓库

我们需要先创建一个本地的版本库(其实也就是一个文件夹)。你可以直接右击新建文件夹,也可以右击打开Git bash命令行窗口通过命令来创建。

现在我通过命令行在桌面新建一个testapp文件夹(你也可以在其他任何地方创建这个文件夹),并且进入这个文件夹
在这里插入图片描述
这时桌面上就会出现一个文件夹,你可以将你的需要上传的文件拷贝进来
(接下来是测试)
在这里插入图片描述
通过命令初始化本地Git仓库

$ git init

把这个文件夹变成Git可管理的仓库
在这里插入图片描述
这时你会发现TEST里面多了个.git文件夹,它是Git用来跟踪和管理版本库的。如果你看不到,是因为它默认是隐藏文件,那你就需要设置一下让隐藏文件可见。
在这里插入图片描述

3、使用add命令 添加 到本地Git仓库

粘贴后你可以通过git status来查看你当前的状态

在这里插入图片描述
然后通过==git add .==把该目录下的所有文件添加到本地仓库,注意点是用空格隔开的。
在这个过程中你其实可以一直使用git status来查看你当前的状态。如果文件内有东西会出现红色的字,不是绿色,这不是错误。
然后我们通过命令

git add  .          # 把刚才复制过来的项目全部添加到仓库上。  

在这里插入图片描述
这个地方稍微改了一下 ,这是单个添加到本地仓库,不推荐使用。
在这里插入图片描述

4、commit命令提交项目到 Git本地仓库。

使用命令。
注:“提交信息”里面换成你需要,如“first commit”

$ 	git commit -m "描述日志" 

把项目提交到仓库。
在这里插入图片描述

5、链接Git本地仓库和Git远程仓库

根据创建好的Git仓库页面的提示,可以在本地testapp仓库的命令行输入:

$ 	git remote add origin https://github.com/fengfanli/testDemo.git

在这里插入图片描述
注意origin后面加的是你Github上创建好的仓库的地址,就是第1步点击复制的地址

6、使用push命令放到Git远程仓库中

关联好之后我们就可以把本地库的所有内容推送到远程仓库(也就是Github)上了,通过命令:

$ 	git push -u origin master

在这里插入图片描述
注:此操作目的是把本地仓库push到github上面,此步骤需要你输入帐号和密码

20221108记,现在不用这个方式了,改用token代替密码push代码了,token的获取请看这个新的博文:github报错(完美解决):获取token:https://blog.csdn.net/qq_40036754/article/details/127740947

会弹出这个对话框
在这里插入图片描述
报了这个错误:(下面有详解)
在这里插入图片描述
原因:出现错误的主要原因是github中的README.md文件不在本地代码目录中)
解决:可以通过以下命令解决上面的错误【注:pull=fetch+merge】

$	git pull --rebase origin master

继续:再执行语句

$	git push -u origin master

即可完成代码上传到github
由于新建的远程仓库是空的,所以要加上-u这个参数,等远程仓库里面有了内容之后,下次再从本地库上传内容的时候只需下面这样就可以了:

$	git push origin master

上传项目的过程可能需要等一段时间,完成之后是这样的:
在这里插入图片描述
这时候你再重新刷新你的Github页面进入刚才新建的那个仓库里面就会发现项目已经成功上传了:
在这里插入图片描述
至此就完成了将本地项目上传到Github的整个过程。

7、后记

当第一次上传成功后,以后在上传时 仅使用以下命令即可

$ git ad .
$ git commit -m '提交的描述'

八、易出现的坑(bug)

另外,这里有个坑需要注意一下,就是在上面第七步创建远程仓库的时候,如果你勾选了Initialize this repository with a README(就是创建仓库的时候自动给你创建一个README文件),那么到了第十一步你将本地仓库内容推送到远程仓库的时候就会报一个to https://github.com/fengfanli/testDemo的错

这是由于你新创建的那个仓库里面的README文件不在本地仓库目录中,这时我们可以通过以下命令先将内容合并以下:

$ 	git pull --rebase origin master

在这里插入图片描述
这时你再push就能成功了。
在这里插入图片描述
总结:其实只需要进行下面几步就能把本地项目上传到Github
注意:如果中途弹出输入框让你填写用户名和密码,只需把GitHub的账号和密码填写上即可。

 1、在本地创建一个版本库(即文件夹),通过git init把它变成Git仓库;
 2、把项目复制到这个文件夹里面,再通过git add .把项目添加到仓库;
 3、再通过git commit -m "注释内容"把项目提交到仓库;
 4、在Github上设置好SSH密钥后,新建一个远程仓库,通过git remote add origin https://github.com/guyibang/TEST2.git将本地仓库和远程仓库进行关联;
 5、最后通过git push -u origin master把本地仓库的项目推送到远程仓库(也就是Github)上;(若新建远程仓库的时候自动创建了README文件会报错,解决办法看上面)。

九、更换Git仓库地址

想更换仓库地址时,或者出现错误fatal: remote origin already exists. 时,可以使用此方法

  • 1、先删除远程 Git 仓库
$ git remote rm origin
  • 2、再重新添加远程 Git 仓库
$ git remote add origin https://github.com/zhibinhsu/ShowAllLabel.git  

用自己的url(创建的仓库的地址,赋值地址栏里面的地址即可)

  • 19
    点赞
  • 104
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

java冯坚持

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值