github的基本使用

本文详述了GitHub的基本概念如仓库、收藏、Fork和PullRequest等,并介绍了创建项目仓库、管理文件、提交记录、Issue、关注、Fork等操作流程。同时,讲解了Git的下载及基本命令用法,包括远程仓库的交互。此外,还涵盖了GitHub的Projects、Insights、Wiki和Settings等功能,以及如何搭建个人博客。最后,通过实例展示了Git与GitHub的协同工作流程。

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


目的

借助github托管项目代码

基本概念

仓库(Repository)

仓库用来存放项目代码,每个项目对应一个仓库,多个开源项目则有多个仓库

收藏(Star)

仓库主页的star按钮,指收藏的人数 ;收藏项目,方便下次查看

Fork(复制克隆项目)

复制别人的仓库到自己的仓库,独立存在

PullRequest(发送请求)

Fork别人的仓库,自己在自己仓库下进行项目修改,请求原来项目的主人也进行更改自己的仓库,如果原项目主觉得修改有意义,则将请求合并到原仓库

Watch(关注)

Watch某个项目后,此项目有更改后会第一时间通知你

Issue(事务卡片)

发现代码的BUG,但是目前没有成型的代码,需要讨论时用

基本使用

1.创建项目仓库

  • 点击左上角的黑猫,然后点击new

在这里插入图片描述

  • 填写信息并创建

在这里插入图片描述

2.创建文件

  • Add file - Create new file

在这里插入图片描述

  • 填写文件名和内容;填写本次创建文件的描述

在这里插入图片描述

3.修改和删除文件

在这里插入图片描述

在这里插入图片描述

4.查看提交、修改、删除记录

在这里插入图片描述

  • 可以看到所有的提交记录

在这里插入图片描述

  • 查看某次修改的详细内容

在这里插入图片描述

5.上传文件

  • Add file-Upload files

在这里插入图片描述

  • 点击choose your files/直接拖动选择多个上传文件,填写提交信息描述.

在这里插入图片描述

6.issue

  • 这个是gsh(另一个)账户,进入之前第一个账户创建的仓库—点击issue—点击New issue

在这里插入图片描述

  • 当在别人的项目下发现问题时,提交讨论问题(git2账户)

在这里插入图片描述

  • 提交成功

在这里插入图片描述

  • 在git1(仓库host)下可以看到git2账户提交的issue,点击可查看详情

在这里插入图片描述

  • 可以选择回复(会公开显示在issue下),或者closed (将不会公开)

在这里插入图片描述

  • 当项目主人认为其他人提交的issue不合适时,可以关闭这个issue的讨论

在这里插入图片描述

7.主页

在这里插入图片描述

8.关注和收藏

  • 在git2账户下可以关注或者收藏git1的仓库,关注此项目时,当此项目有改动时系统会通知git2账户

在这里插入图片描述

9.Fork

  • 在git2账户下,fork(克隆)git1账户下的仓库

在这里插入图片描述

  • 在git2账户下成功fork了git1的项目,此仓库独立与git1的仓库

在这里插入图片描述

  • 在git2账户下创建会修改文件

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 比较本次的项目的改变并提交pull request

在这里插入图片描述

  • 添加本次pull requests的说明后create pull requests

在这里插入图片描述

  • 在git1账户下可以查看到git1提交的pull requests

在这里插入图片描述

  • 可查看本次pull requests的详细信息,确认后可以点击merge进行合并

在这里插入图片描述

  • 确认merge

在这里插入图片描述

  • 之后就可以在git1账户(host)的仓库下查看到

在这里插入图片描述

10.比较两个分支的变化

  • 在仓库名字后加"/compare"即可比较两个分支的变化情况

在这里插入图片描述

在这里插入图片描述

11.Projects

可以制定任务计划表,清晰的显示项目的进展情况

  • 点击New Project
    在这里插入图片描述

  • 填写描述等信息

在这里插入图片描述

  • 添加列

在这里插入图片描述

  • 填写列的基本信息

在这里插入图片描述

  • 在每一列中添加对应的计划

在这里插入图片描述

  • 每一列的计划任务可以互相拖动

在这里插入图片描述

12.insights

项目的一些统计信息,如: 项目的访问情况,项目的克隆情况,项目的关注情况等…

在这里插入图片描述

13.Wiki

可以放项目的一些资料,介绍等等…

在这里插入图片描述

14.settings

可以修改仓库名字,改变仓库的可见性,删除仓库等

在这里插入图片描述

在这里插入图片描述

也可改变项目的主题

在这里插入图片描述

git的使用

git下载地址

https://git-scm.com/downloads

基本使用命令

sweetheart@sweetheart-PC:~/git-test$ git --version 
git version 2.17.0

sweetheart@sweetheart-PC:~/git-test$ vim index.html

sweetheart@sweetheart-PC:~/git-test$ ls
index.html

sweetheart@sweetheart-PC:~/git-test$ git status
fatal: 不是一个 git 仓库(或者直至挂载点 / 的任何父目录)
停止在文件系统边界(未设置 GIT_DISCOVERY_ACROSS_FILESYSTEM)。

sweetheart@sweetheart-PC:~/git-test$ git init
已初始化空的 Git 仓库于 /home/sweetheart/git-test/.git/

sweetheart@sweetheart-PC:~/git-test$ git config --global user.name "username"
sweetheart@sweetheart-PC:~/git-test$ git config --global user.email "xxxxx@qq.com"

sweetheart@sweetheart-PC:~/git-test$ git status
位于分支 master

尚无提交

未跟踪的文件:
  (使用 "git add <文件>..." 以包含要提交的内容)

        index.html

提交为空,但是存在尚未跟踪的文件(使用 "git add" 建立跟踪)

sweetheart@sweetheart-PC:~/git-test$ git add index.html 
sweetheart@sweetheart-PC:~/git-test$ git status 
位于分支 master

尚无提交

要提交的变更:
  (使用 "git rm --cached <文件>..." 以取消暂存)

        新文件:   index.html

sweetheart@sweetheart-PC:~/git-test$ git commit -m "test remote"
[master(根提交) 019a626] test remote
 1 file changed, 1 insertion(+)
 create mode 100644 index.html

sweetheart@sweetheart-PC:~/git-test$ git status 
位于分支 master
无文件要提交,干净的工作区

sweetheart@sweetheart-PC:~/git-test$ git remote 

sweetheart@sweetheart-PC:~/git-test$ git remote add origin "https://github.com/xxxx/xxx.git"

sweetheart@sweetheart-PC:~/git-test$ git remote -v
origin  https://github.com/xxxx/xxx.git (fetch)
origin  https://github.com/xxxx/xxx.git (push)

sweetheart@sweetheart-PC:~/git-test$ git branch 

* master

sweetheart@sweetheart-PC:~/git-test$ git push origin master
Username for 'https://github.com': username
Password for 'https://sweetheart-7-7@github.com': 
To https://github.com/sweetheart-7-7/whb.git
 ! [rejected]        master -> master (fetch first)
error: 无法推送一些引用到 'https://github.com/sweetheart-7-7/whb.git'
提示:更新被拒绝,因为远程仓库包含您本地尚不存在的提交。这通常是因为另外
提示:一个仓库已向该引用进行了推送。再次推送前,您可能需要先整合远程变更
提示:(如 'git pull ...')。
提示:详见 'git push --help' 中的 'Note about fast-forwards' 小节。

sweetheart@sweetheart-PC:~/git-test$ git push -u origin +master
Username for 'https://github.com': username
Password for 'https://sweetheart-7-7@github.com': 
对象计数中: 3, 完成.
写入对象中: 100% (3/3), 231 bytes | 231.00 KiB/s, 完成.
Total 3 (delta 0), reused 0 (delta 0)
To https://github.com/sweetheart-7-7/whb.git

 + 69e8a94...019a626 master -> master (forced update)
   分支 'master' 设置为跟踪来自 'origin' 的远程分支 'master'

# 克隆项目到本地
sweetheart@sweetheart-PC:~/git-test$ git clone "https://github.com/gsh101/test-git.git"   
正克隆到 'test-git'...
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
展开对象中: 100% (3/3), 完成.

sweetheart@sweetheart-PC:~/git-test$ ls
index.html  test-git

查看设置: git config --list 
   
   
   
remote: Permission to xx/test-git.git denied to xxx. fatal: u

清空用户目录下配置的全局用户名和密码就可以了。~/.gitconfig

重新push, 就会提示输入用户名和密码了。

git的基本框架与github的联系

在这里插入图片描述
注: 此图片转载自菜鸟教程。

workspace:工作区
staging area:暂存区/缓存区
local repository:或本地仓库
remote repository:远程仓库

git的基本操作

创建仓库命令

下表列出了 git 创建仓库的命令:

命令说明
git init初始化仓库
git clone拷贝一份远程仓库,也就是下载一个项目。

提交与修改

Git 的工作就是创建和保存你的项目的快照及与之后的快照进行对比。

下表列出了有关创建与提交你的项目的快照的命令:

命令说明
git add添加文件到仓库
git status查看仓库当前的状态,显示有变更的文件。
git diff比较文件的不同,即暂存区和工作区的差异。
git commit提交暂存区到本地仓库。
git reset回退版本。
git rm删除工作区文件。
git mv移动或重命名工作区文件。

提交日志

命令说明
git log查看历史提交记录
git blame 以列表形式查看指定文件的历史修改记录

远程操作

命令说明
git remote远程仓库操作
git fetch从远程获取代码库
git pull下载远程代码并合并
git push上传远程代码并合并

分支操作

命令说明
git branch 分支名创建分支
git ckeckout -b 分支名创建+切换分支
git branch -d 分支名删除分支
git branch查看分支
gti checkout 分支名切换分支
git merge 分支名合并某分支到当前分支

搭建个人博客(静态)

命名仓库

  • 格式: 用户名.github.io

在这里插入图片描述

上传主页

  • Add file-upload file-上传主页,必须有index.html

在这里插入图片描述

访问

  • 上传完毕后访问: 用户名.github.io 即可

在这里插入图片描述

添加项目介绍

进入settings-Change theme

在这里插入图片描述

选择主题并进入自定义修改页面

在这里插入图片描述

修改项目主页的介绍

在这里插入图片描述

在gh-pages分支下修改配置文件

在这里插入图片描述

访问项目介绍页

  • 访问: 用户名.github.io/仓库名 即可查看
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值