Git与GitHub学习笔记

参考视频:【教程】学会Git玩转Github【全】

GitHub

基本概念

仓库(Repository) :仓库用来存放项目代码,每个项目对应一个仓库,多个项目则有多个仓库。
收藏(Star):收藏项目,方便下次查看。
关注(watch):关注项目,当项目更新时可以接受到通知。
复制克隆项目(Fork):复制克隆一份完整的仓库到自己的账户下,克隆好的仓库将独立存在。
发起请求(Pull Request):克隆的仓库发生的变化想同步到原仓库,需要向原仓库Pull Request,经原仓库的管理员同意,将变化同步到原仓库。
事务卡片(issue):需要讨论时使用。当需要与目标项目的管理员进行交流时,可以新建一个issue。
GitHub主页:点击GitHub图标(左上角小猫图标)进入GitHub主页,该页左侧显示用户动态以及关注用户或仓库的动态,右侧显示所有的git库。
仓库主页:GitHub主页下点击左上角具体仓库名称后进入该仓库的主页,仓库主页主要显示项目的信息,包括项目代码、版本、收藏、关注等。
个人主页:点击右上角个人头像,选择其中的Your profile进入个人主页,主要显示个人信息,包括头像、个人简介、关注我的人等。

基本操作

创建仓库:进入GitHub主页,点击左上角的New新建一个仓库,点击之后会弹出仓库创建界面,输入仓库名称,仓库介绍,选择仓库是公开还是私有的,自主选择是否添加介绍文件、.gitignore文件以及开源协议,开源协议的选择可以参考:GitHub开源协议详解及常用协议介绍
Git与GitHub学习笔记
Git与GitHub学习笔记
仓库新建文件:仓库创建完成后,会自动进入新建仓库的主页,点击Add file中的Create new file新建文件,之后会弹出文件编辑界面,编辑好内容后,翻到页面最下方,输入此次操作名称及描述,选择新文件需要提交到哪一个分支(branch)后,点击commit new file,完成提交。
Git与GitHub学习笔记
Git与GitHub学习笔记
上传本地文件:进入仓库主页,点击Add file中的Upload files,会进入上传文件界面,可以将本地文件之间拖入到弹出界面的方框中,也可以点击方框中的choose file选择需要上传的文件。
Git与GitHub学习笔记

编辑或删除已有文件:进入仓库主页,点击文件名称,会弹出该文件的内容详情,点击文件内容又上分的铅笔图标可对文件进行编辑,点击垃圾桶图标删除文件。
Git与GitHub学习笔记
Git与GitHub学习笔记
搜索文件:进入仓库主页,点击Go to file,输入需要查找的文件名称,可以快速定位需要的文件。
Git与GitHub学习笔记

查看文件提交时的详细信息: 进入仓库主页,点击文件中间的操作名称,可以查看该文件提交时的详细信息,包括同一批提交的有哪一些文件,提交作者是谁,该次提交的描述,该次提交的内容以及该次提交所作的变化等。
Git与GitHub学习笔记
查看历史提交:进入仓库主页,可以看见一个时钟图标,时钟图标旁边记录了该项目历史总共进行了几次提交,点击时钟图标,可以查看每一次历史提交的详情。
Git与GitHub学习笔记
下载/检出仓库所有文件:下载仓库中所有文件有两种方式,第一种是下载打包成Zip压缩包的仓库文件,第二种是通过Git工具下载。先介绍第一种方式,进入仓库主页,点击Code,选择DowLode Zip,便可下载整个项目的压缩包。
Git与GitHub学习笔记
通过issue与其他仓库的管理员进行交流:当你在浏览他人的仓库时,想要与该仓库的管理员进行交流,可以进入该仓库的issue界面,点击右上角的New issue,发布新的一条事务,管理员在看到后可能会对你进行回复。
Git与GitHub学习笔记
Git与GitHub学习笔记
Git与GitHub学习笔记

Git

基本概念

Git工作区域

  1. 工作区(Working Directory):一般就是我们的项目文件夹,我们在此区域进行添加、编辑、修改文件等操作
  2. 暂存区:暂存已经修改好的文件,最后统一提交(commit)到git本地仓库中
  3. Git 本地仓库(Git Local Repository):将最终确定的文件保存到git本地仓库,成为一个新的版本
  4. Git 远程仓库(GitHub Repository):在另一台电脑或服务器上的仓库,一般就是指GitHub服务器上的仓库
    注:工作区、暂存区和Git本地仓库都是一个抽象概念,并不是说真的就在项目文件夹中划分出了三个区域,实际上,文件本身自始至终都一直在项目文件夹里,并没有发生移动。Git在将项目文件夹初始化为本地仓库时,会在项目文件夹内创建一个.git文件夹,这个文件夹中的文件会记录项目中的哪些文件处在仓库内,哪些文件处在暂存区,哪些文件处在工作区,通过文件记录的形式实现在逻辑上划分出三个区域。而Git远程仓库是真实存在的另一个仓库,它处在服务器上,一般就是指GitHub服务器上的仓库,Git本地仓库与Git远程仓库是独立存在的,本地仓库发生的变化并不会改变远程仓库。

基本操作

查看暂存区的内容以及未被跟踪的文件git status
将文件从工作区添加到暂存区git add <filename>(filename替换为需要添加的文件名字)
将文件从暂存区提交到Git本地仓库git commit -m "<提交描述>"(提交描述记录你这次提交的主要内容或主要目的)
仅从暂存区中删除文件git rm --cached <filename>
从暂存区和工作区中删除文件:git rm -f <filename>
在工作区中删除文件后,将删除同步到暂存区git rm <filename>
从远程仓库(GitHub对应的项目)克隆到本地git clone <仓库地址>(进入GitHub对应项目的仓库页面,点击Code复制http代码)
Git与GitHub学习笔记
将Git本地仓库同步到Git远程仓库git push
查看Git所有设置git config --list

初始化本地仓库流程

  1. 设置基本信息:(基本信息用于在GitHub上显示谁提交了该文件)
    设置用户名:git config --global user.name '<username>'(username替换为你的用户名)
    设置用户邮箱:git config --global user.email '<useremail>'(useremail替换为你的邮箱)
  2. 初始化本地仓库:(生成一个.git文件夹,用于存储仓库的历史版本等信息)
    进入本地仓库文件夹:cd <DirectoryPath>(DirectoryPath替换为本地仓库文件夹所在路径)
    初始化本地仓库:git init

在本地仓库进行一次增删改操作流程

  1. 在工作区(即本地仓库)进行增删改操作
  2. 将增删改从工作区同步到暂存区
    同步新增文件:git add <filename>
    同步已修改文件:git add <filename>
    同步已删除文件:git rm <filename>
  3. 将增删改从暂存区同步到Git本地仓库
    同步到Git本地仓库:git commit -m "提交描述“

配置SSH免密登录远程仓库

参考博客:如何用git将项目代码上传到GitHub

将本地仓库上传到远程仓库

如果是首次上传,需要先使用:git pull将远程仓库克隆到本地仓库,修改完代码后,使用git status查看文件的差别,将需要上传的文件先通过git add <filename>git commit -m "提交描述”上传到本地仓库,在通过"git push"上传到远程仓库。
如果不是首次上传,只需要在将修改提交到本地仓库后,直接通过"git push上传到远程仓库。