GitHub入门基础图解

本文是GitHub入门的基础教程,涵盖了创建新仓库、在Linux(以CentOS为例)上安装Git、初始化仓库、跟踪文件、查看提交历史、远程仓库的添加、抓取与拉取、重命名与移除等操作。通过实例详细解析了Git的使用流程,帮助初学者掌握GitHub的基本操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用github第一步是注册github账号, github官网地址:https://github.com/

官网资料安装包等下载链接:https://git-scm.com/downloads

   免费用户只能建公共仓库

 

 创建新仓库页面详解:

 

 

 仓库的页面描述:

 在 GitHub,“fork”指的是你自己的空间中创建的项目副本,这个副本允许你以一种更开放的方式对其进行修改

在linux系统上安装git:以centos版本为例子

使用yum命令:

先安装依赖:yum install curl-devel expat-devel gettext-devel  openssl-devel zlib-devel

在使用

yum -y install git 目前最高版本是1.8 

 使用前配置: 

git config --global user.name "这里输入你在GitHub的账户名"
git config --global user.email "这里输入你在GitHub的注册邮箱名"

注意:git config  –global 参数,有了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然你也可以对某个仓库指定的不同的用户名和邮箱

查看所有配置信息:git config --list/git config -l 可以查看上面命令是否配置了账户 邮箱

目录中初始化仓库

    创建文件夹:mkdir  /home/user/my_project

    进入文件夹中:cd   /home/user/my_project

   git init 命令将创建一个名为 .git 的子目录(默认情况下是隐藏文件夹),这个子目录含有你初始化的 Git 仓库中所有的必须文件,这些文件是Git 仓库的骨干。 但是,在这个时候,我们仅仅是做了一个初始化的操作,你的项目里的文件还没有被跟踪。

   

Git 的核心组成部分:

    1.objects 目录存储所有数据内容;2.refs 目录存储指向数据(分支、远程仓库和标签等)
的提交对象的指针; 3.HEAD 文件指向目前被检出的分支;4.index 文件保存暂存区信息

其他部分:

description :仅供 GitWeb 程序使用,我们无需关心。

    config :包含项目特有的配置选项。

    info目录 :包含一个全局性排除(global exclude)文件 , 用以放置那些不希望被记录                                 在.gitignore文件中的忽略模式(ignored patterns)。

   hooks 目录:包含客户端或服务端的钩子脚本( Git钩子是在Git仓库中特定事件发生时自动运行                           的脚本)

跟踪文件

echo 'My Project' > README 将输出重定向到文件

       用 git status 命令查看哪些文件处于什么状态;看到新建的 README 文件出现在 Untracked files 下面。 未跟踪的文件意味着 Git 在之前的快照(提交)中没有这些文件 。

命令 git add 开始跟踪,git add 命令使用文件或目录的路径作为参数;如果参
数是目录的路径,该命令将递归地跟踪该目录下的所有文件。

 

 在 Changes to be committed 这行下面的,就说明是已暂存状态。看到 README 文件已被跟踪,并处于暂存状态。

 git status -s / git status --short 命令,新添加的未跟踪文件前面有 ?? 标记,新添加到暂存区中的文件前面有 A 标记,修改过的文件前面有 M 标记。

查看已暂存的将要添加到下次提交里的内容,可以用 git diff --staged 命令。 这条命令将比对已暂存文件与最后一次提交的文件差异:

查看尚未暂存的文件更新了哪些部分,不加参数直接输入 git diff

提交命令git commit

 

 要从 Git 中移除某个文件,就必须要从已跟踪文件清单中移除(确切地说,是从暂存区域移除),然后提交。可以用 git rm  命令完成此项工作,并连带从工作目录中删除指定的文件,这样以后就不会出现在未跟踪文件清单中了。

  如果要删除之前修改过或已经放到暂存区的文件,则必须使用强制删除选项 -f(译注:即 force        的首字母)。

把文件从 Git 仓库中删除(亦即从暂存区域移除),但仍然希望保留在当前工作目录
中.即是让文件保留在磁盘,但是并不想让 Git 继续跟踪,使用 --cached 。

文件重命名:git mv  原文件名  改名后文件名

查看提交历史

git log 会按时间先后顺序列出所有的提交,最近的更新排在最上面。 正如你所看到的,这个命令会列出每个提交的 SHA-1 校验和、作者的名字和电子邮件地址、提交时间以及提交说明。

 一个比较有用的选项是 -p 或 --patch ,它会显示每次提交所引入的差异(按 补丁 的格式输出)。 你也可以限制显示的日志条目数量,例如使用 -1选项来只显示最近的1次提交:

  git reset HEAD 文件名 来取消暂存。 所以,我们可以这样来取消暂存 CONTRIBUTING.md 文        件:

 撤消之前所做的修改git checkout -- 文件名

 

远程仓库服务器

如果想查看你已经配置的远程仓库服务器,可以运行 git remote 命令。 它会列出你指定的每一个远程服务器的简写。 如果你已经克隆了自己的仓库,那么至少应该能看到 origin ——这是 Git 给你克隆的仓库服务器的默认名字:

  git remote -v 列出所有仓库信息

添加远程仓库

git remote add <shortname简称短名>  <url> 添加一个新的远程 Git 仓库,同时指定一个方便
使用的简写:

 

git fetch 命令与一个远程的仓库交互,并且将远程仓库中有但是在当前仓库的没有的所有信息拉取下来然后存储在你本地数据库。

拉取 Paul 的仓库,在命令行中使用字符串 pb 来代替整个 URL

 

从远程仓库中抓取与拉取

从远程仓库中获得数据git fetch  短名称/简称/URL,只会将数据下载到你的本地仓库——它并不会自动合并或修改你当前的工作

默认情况下,git clone 命令会自动设置本地 master 分支跟踪克隆的远程仓库的 master 分支(或其它名字的默认分支)。 运行 git  pull 通常会从最初克隆的服务器上抓取数据并自动尝试合并到当前所在的分支。git pull 命令基本上就是 git fetch 和 git merge 命令的组合体,Git 从你指定的远程仓库中抓取内容,然后马上尝试将其合并进你所在的分支中。

 这个命令很简单:git push  <remote简称>  <branch分支名>。 当你想要将 master 分支推送到 origin 服务器时(再次说明,克隆时通常会自动帮你设置好那两个名字), 那么运行这个命令就可以将你所做的备份到服务器:git push origin master 

查看某个远程仓库

git remote show <remote简称>

git remote 命令是一个是你远程仓库记录的管理工具。 它允许你将一个长的 URL 保存成一个简写的句柄,例如 origin ,这样你就可以不用每次都输入他们了。 你可以有多个这样的句柄,git remote 可以用来添加,修改,及删除它们。

 它同样会列出远程仓库的 URL 与跟踪分支的信息。 这些信息非常有用,它告诉你正处于 master 分支,并且如果运行 git pull, 就会抓取所有的远程引用,然后将远程 master 分支合并到本地 master 分支。 它也会列出拉取到的所有远程引用。

远程仓库的重命名与移除

 git remote rename 来修改一个远程仓库的简写名。

例如,想要将 pb 重命名为 paul

 移除一个远程仓库命令:git remote remove 仓库简称 / git remote rm 仓库简称

如果不想每次都输入完整的 Git 命令,可以通过 git  config 文件来轻松地为每一个命令设置一个别名:

$ git config --global alias.co checkout   当要输入 git checkout 时,只需要输入 git co
$ git config --global alias.br branch
$ git config --global alias.ci commit    当要输入 git commit 时,只需要输入 git ci
$ git config --global alias.st status

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值