文章目录

  • Git浅谈
  • Git是什么
  • Git工作流
  • 一、注册github账户并创建github仓库
  • 二、使用git
  • 三、上传项目



Git浅谈

阅读此部分可以帮助了解git的工作机制,帮助学习git,不阅读此部分,可以直接看后面三节

Git是什么
  • Git(读音为/git/)是一个开源的分布式版本控制系统
  • 可以有效、高速地处理从很小到非常大的项目版本管理
Git工作流




git如何把一个新的文件放到仓库_git

Remote:远程仓库


Repository:本地仓库


workspace:工作区,每当在代码中进行了修改,working space的状态就改变了。


Index:暂存区,它是连接workspace和Repository的桥梁,每当我们使用git-add命令后,index的内容就改变了,此时index就和workspace同步了


一、注册github账户并创建github仓库

1、注册github账户
进入GitHub 注册页面,输入用户名,邮箱和密码,根据提示一步一步进行注册,最后还需要登录注册的邮箱验证电子邮件地址,注册页面如下图



git如何把一个新的文件放到仓库_git_02

邮箱验证成功后,登录到github上。

2、创建一个github项目
点击“Start a project”创建一个项目,在“Repository name” 中输入仓库名字,可以取符合规范的任意名字,之后就可以通过这个名字直接访问该仓库下的代码了,可以将它作为你的个人网站。



git如何把一个新的文件放到仓库_用户名_03

然后点击“Create repository”创建仓库,根据提示将本地的代码上传到仓库中。创建步骤如下图


git如何把一个新的文件放到仓库_git如何把一个新的文件放到仓库_04

创建完成后的界面


git如何把一个新的文件放到仓库_github_05

3、创建一个本地项目 之后本地首先需要新建一个目录,名称和仓库名一致,例如:上面我创建的项目名为MyTest,下面我创建的文件夹名也为MyTest


git如何把一个新的文件放到仓库_git工作流_06



二、使用git

1、安装 git
首先去git 官网下载并安装 git,安装步骤略过



git如何把一个新的文件放到仓库_git工作流_07

鼠标右键如上图,表示安装成功,然后点击 “Git Bash Here”,打开命令窗口 2、在 GitHub 上添加 SSH key 首先需要检查你电脑是否已经有 SSH key,在任意位置处,右键,选择git bush here,在命令窗口执行:

cd ~/.ssh



git如何把一个新的文件放到仓库_github_08

上图说明没有ssh(如果有,直接跳到第3步),接下来添加一下ssh key。执行

ssh-keygen -t rsa -C "your_email@example.com" -t 指定密钥类型,默认是 rsa ,可以省略。
-C 设置注释文字,比如邮箱。
-f 指定密钥文件存储文件名
例如输入

ssh-keygen -t rsa -C 15170505655@163.com

上面的代码省略了 -f 参数,因此,运行上面那条命令后会让你输入一个文件名,用于保存刚才生成的 SSH key 代码,可以不输文件名,直接回车,接着又会提示你输入两次密码(该密码是你 push 文件的时候要输入的密码,而不是 GitHub 管理者的密码),可以不输(push 的时候也就不用输入密码了),一路回车,如果出现下图内容,表示生成秘钥成功。



git如何把一个新的文件放到仓库_git如何把一个新的文件放到仓库_09

现在我们再次执行 ```bash cd ~/.ssh //切换到该路径下 ls //显示该文件夹下的内容 ```


git如何把一个新的文件放到仓库_git工作流_10

此时发现已经不会再返回结果了,说明配置正确。注意,图中被框中的路径即为.ssh文件夹下两个文件的路径,记住此路径,第三步会用

补充:如果刚才设置了密码,怎么清除呢?,执行下边命令:

ssh-keygen -p

先会提示你选择需要修改的私钥,回车就可以,然后让你输入就密码,输入后,会提示你输入新密码,直接回车不输,提示确认新密码,再次回车,此时密码就被清除掉了,以后 push 的时候就不需要输入密码了。

3、添加你的 SSH key 到 GitHub 上面去

用编辑器(如记事本)打开 id_rsa.pub,该文件所在路径为“C:\Users\Administrator.ssh”复制里边的内容,然后打开 GitHub,登录你的账号,打开设置(右上角 Settings),点击右侧 SSH,然后点击“New SSH key”,添加刚复制的内容



git如何把一个新的文件放到仓库_git工作流_11

上图中,由于我已经之前添加过了,但可以继续点击New SSH key进行添加,添加完成后的界面如下


git如何把一个新的文件放到仓库_用户名_12

4、测试一下该 SSH key

执行下面命令:

ssh -T git@github.com

然后输入 yes 回车,如果没有问题,你上面设置了密码,下一步就会让你输入密码,没有设置密码,就直接会显示出你的 gitHub 用户名,下图表示添加成功:



git如何把一个新的文件放到仓库_git_13



三、上传项目

在本地的项目目录(E:\GitHub\MyTest)下,注意我们本地创建的项目名称和在github上创建的仓库名称一定要一致,在该文件下右键打开一个git bash,执行下面给出的命令,

1、把这个文件夹变成Git可管理的仓库

通过命令git init把这个文件夹变成Git可管理的仓库

git init

这时可以发现study里面多了个.git文件夹,它是Git用来跟踪和管理版本库的。如果你看不到,是因为它默认是隐藏文件,那你就需要设置一下让隐藏文件可见。执行结果如下所示



git如何把一个新的文件放到仓库_git如何把一个新的文件放到仓库_14

2、把项目添加到仓库


git add 文件名 //把项目添加到仓库(或git add .把该目录下的所有文件添加到仓库,注意点是用空格隔开的)。在这个过程中你其实可以一直使用git status来查看你当前的状态。 比如我写一个MyTest.txt文档,内容为Hello Git,并保存。

git add MyText.txt



git如何把一个新的文件放到仓库_git_15


git如何把一个新的文件放到仓库_git_16

运行结果如上图

3、把项目提交到仓库。


git commit -m "注释"将项目提交到本地仓库(repository)

git commit -m "MyFirst Commit"

成功提交后的结果如下图



git如何把一个新的文件放到仓库_git如何把一个新的文件放到仓库_17

4、与github(远程仓库)建立联系(前提是已在github上创建该文件夹后)


仓库链接从下图中此处获得


git如何把一个新的文件放到仓库_github_18


git remote add origin https://github.com/xdobetter/MyTest.git

运行效果如下图



git如何把一个新的文件放到仓库_git_19


5、把本地库MyTest的所有内容推送到远程仓库(也就是Github)上

git push -u origin master把本地库MyTest的所有内容推送到远程仓库(也就是Github)上,此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改;

git push -u origin master

在执行该命令过程中,弹出登录对方框,输入注册git的账号密码



git如何把一个新的文件放到仓库_用户名_20

推送成功后的结果如下


git如何把一个新的文件放到仓库_git_21

打开我们的github网站,进入我们创建的项目,可以发现我们已经提交上去了,结果如下


git如何把一个新的文件放到仓库_用户名_22


git如何把一个新的文件放到仓库_github_23


发现一个问题,我在生成 SSH key 的时候并没有设置密码,为什么 push 的时候还需要用户名密码?
因为用的是 https 而不是 ssh,更新 origin 为 ssh 格式。
HTTPS的格式为:https://github.com/用户名/仓库名.git
SSH的格式为:git@github.com:用户名/仓库名.git
设置一下:

git remote remove origin
git remote add origin git@github.com:用户名/仓库名.git



git如何把一个新的文件放到仓库_git_24

设置完之后,我再新建一个txt文件,并输入如上内容,执行下图中语句进行提交


git如何把一个新的文件放到仓库_git如何把一个新的文件放到仓库_25


github上的结果



git如何把一个新的文件放到仓库_用户名_26



git如何把一个新的文件放到仓库_git_27


到此,把本地项目上传到github的讲解结束