把一个 helloworld.txt git到guthub以及再clone下来,需要做哪些事

本文详细介绍了如何在Linux下安装Git,配置用户信息,生成SSH密钥并添加到GitHub,创建本地仓库,初始化及提交操作,查看和回退版本,以及推送代码到远程仓库的过程。涵盖了从零开始到协作的基本步骤。

默认

first things first

  • 默认已经创建好github账户
  • 默认linux基础命令
  • 默认vim基本操作

安装

首先需要安装git
以manjaro linux为例

sudo pacman -S git

配置

全局配置

配置user和email来说明等会是谁在commit

  • 配置关联用户名

    git config --global user.name "[name]"

  • 配置关联邮箱
    git config --global user.email "[email address]"

生成ssh-key并添加到github

没有ssh key或者token是不能push到远程的,这里只说ssh key

大致流程是在本地生成ssh key,再复制到github,可以参考官网的文档

生成sshkey:

https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent

复制生成的key如何粘贴到github:

https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account

ssh的配置:

https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints

来手动操作

在home目录下

# emali例如 1111111@qq.com

ssh-keygen -t ed25519 -C "email"

这里会显示生成的key,但是不能直接复制格式会乱,用cat再去复制粘贴

cat ~/.ssh/id_ed25519.pub

粘贴到github account
请添加图片描述
完成

github创建远程仓库

创建一个名为git-demo的仓库
请添加图片描述
前期准备至此完成


初始化本地仓库

首先,在/home下创建个git-space目录

mkdir git-space

再在git-space下创建git-demo目录,此目录作为本地仓库存放的目录

cd git-space/

mkdir git-demo

cd git-demo/完成

初始化本地仓

git init

创建helloworld.txt,里面写上Hello World

#里面写上Hello World

 vim hello.txt

提交到本地仓库

查看本地仓状态

git status

会看到有个未追踪文件为红色,表明要把helloworld.txt添加到暂存区

git add helloworld.txt

查看状态

git status

文件名变为绿色,表明添加暂存成功,可继续写东西再添加暂存或提交本地仓

如有需要,从暂存区删除helloworld.txt文件
git rm --cached helloworld.txt

提交到本地仓

# -m 后为注释

git commit helloworld.txt -m 'first commit'

git status查看,显示干净的工作区,本次提交成功


日志

查看引用日志信息

git reflog

在这里插入图片描述

查看详细日志

git log

在这里插入图片描述

其中,commit后面版本号,括号里表示当前HEAD指针指向master分支


版本回退

在版本回退之前,至少得要两个版本以上吧,
所以在helloworld.txt里,以文本" v*.0 "分两次写入表明版本,分别依次add,commit

v1.0

在helloworld.txt里加上v1.0
请添加图片描述
然后

git add helloworld.txt

git commit helloworld.txt -m "patch v1.0"

v2.0

方法同上
请添加图片描述

再依次

git add helloworld.txt

git commit helloworld.txt -m "patch v1.0"

查看日志

git reflog

请添加图片描述
这里就能看到三个版本了,这是按commit时间降序的。
head指向的就是最新的一次提交的版本

回退

假如此时要回退到最初版本

先看一下最新的版本里helloworld.txt的内容

cat helloworld.txt

请添加图片描述
再查看下版本号

git reflog

请添加图片描述
用reset回退,版本号为箭头所指向

git reset --hard 2d19e6e

版本就回退到最初版本了,查看一下文本
请添加图片描述
没问题


推送到远程仓库

创建远程仓库别名

# 这里origin为远程仓别名,name为用户名,记得去掉中括号
git remote add origin git@github.com:[name]/git-demo.git

查看远程仓别名

git remote -v

这里就能看到两个别名,一个用于拉取,一个用于推送
请添加图片描述
推送至远程库

# 将当前master分支推送至origin远程仓
git push origin master

push完成
请添加图片描述
去github里git-demo仓库就能看到刚刚push的helloworld.txt了
请添加图片描述

拉取远程仓库至本地

先在github上把helloworld.txt改动一下,新增一句话
请添加图片描述
拉取

 git pull origin master 

拉取成功
请添加图片描述
查看一下helloworld.txt
请添加图片描述
没问题

克隆远程仓

先找一个空文件夹,不用init

git clone git@github.com:[username]/git-demo.git  

克隆就成功了

这里的clone做了三件事

  • 拉取代码
  • 初始化本地仓库
  • 创建别名
    也就是说clone就不用再去init、pull、remote add

到这里,就完成了把一个 helloworld.txt 文件 git 到 guthub的git-demo
再把git-demo克隆到一个空文件夹里的过程

最后,由于是单人仓库初次学习使用,所以不涉及branch分支的 创建、合并、改正代码合并冲突,可以参考其他作者文章。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值