最近在写一个archlinux的自动安装脚本,由于需要在不同电脑上切换非常麻烦,所以使用github做版本管理,网上查了很多资料,做一下笔记捋一下git与github的简单使用流程:
测试平台:Windows7 + ArchLinux
首先要理解的是:
每一个文件夹都可以当成是一个本地仓库(只要包含有 .git)
每一个本地仓库都有一个 .git 包含该仓库的基本设置
1. 安装 git
我这里使用archlinux发行版,直接使用pacman
命令安装:
sudo pacman -S git openssh
archlinux 安装git
2. 生成公钥
首先打开你自己的 terminal,然后一样输入命令:
注意: 记得把"xxxx@xxx.com"替换成你将用来注册github账号的邮箱地址!
注意: 记得把"xxxx@xxx.com"替换成你将用来注册github账号的邮箱地址!
注意: 记得把"xxxx@xxx.com"替换成你将用来注册github账号的邮箱地址!
ssh-keygen -t rsa -C "xxxx@xxx.com"
一路按回车即可!
生成之后按提示路径找到id_rsa.pub
这个文件,即是我们要添加的公钥文件。
而id_rsa
文件则不用理会,它是根据本地电脑生成的私钥,用来配对github上的公钥。
接下来找到公钥路径,打开
id_rsa.pub
文件,并全选文件里面的内容复制出来,以做备用。复制公钥内容
3. 添加公钥到 Github
首先当然是要去github官网注册一个账号啦~
按提示注册完之后,登录账号按提示添加公钥:
Settings -> SSH and GPG keys -> SSH keys -> New SSH key
进入
SSH keys
添加页面后,按提示将复制出来的公钥内容粘贴到Key栏,最后点击添加按钮,输入登录密码确认添加,到此个人电脑与 Github 的公钥添加已完成。
粘贴公钥内容
SSH keys添加完成
最后验证是否添加成功,输入命令:
ssh -T git@github.com
回车后按提示输入 yes
回车即可。
4. 创建Github远程仓库
setting New根据自己的需求创建相应的远程仓库:
eg: archlinuxScript
创建远程仓库
复制远程仓库地址备用
复制远程仓库地址
5. 配置git
打开 terminal,随意创建一文件夹(eg: /home/skilfl/github),进入该文件夹并输入命令设置github 账号名和邮箱地址:
"githubname":注册的Github账号名称
"xxxx@xxx.com":注册Github用的邮箱地址
注意:记得替换 "githubname" 与 "xxxx@xxx.com" !
注意:记得替换 "githubname" 与 "xxxx@xxx.com" !
注意:记得替换 "githubname" 与 "xxxx@xxx.com" !
git config --global user.name "githubname"
git config --global user.email "xxxx@xxx.com"
配置本地git
现在可以随意拉取推送远程仓库了!
6. 推送项目到github
推送之前先看一下远程仓库的内容,只有个README.md
文件:
推送文件到 步骤4 中所创建的远程仓库archlinuxScript
完整流程:
a. 首先初始化本地仓库
git init
b. 然后添加远程仓库,并查看远程仓库是否添加成功
# git remote add origin git@github.com:yourName/yourRepo.git
git remote add origin git@github.com:skillf-qf/archlinuxScript.git
git remote -v
c. 拉取远程仓库到本地仓库,目的让本地仓库和远程仓库保持一致
git pull origin main
d. 进入本地仓库(创建的文件夹 /home/skillf/github) 并添加一个文件 test.c
,模拟修改本地仓库
touch test.c
e. 将文件添加到暂存区:
文件多的话,可以使用 git add . 表示当前目录下的所有文件
git add test.c
f. 添加提交说明:
提交说明类似于代码注释,方便我们记忆项目做了哪些修改,也可为空。
git commit -m "update 20210126"
g. 推送之前需要统一本地仓库和远程仓库的分支名,不然会推送出错
先看github 远程仓库的默认分支名: main
在看本地仓库的分支名
git branch -a
查看本地仓库默认分支名
很明显不一致,原因是以前的git和github的默认分支都叫 master,后来github上改为了main,而git没有做修改,此时我们需要手动修改分支名:
git branch -m master main
i. 推送本地仓库到远程仓库:
git push origin main
注意:
origin
是关联的远程仓库的标签,可以使用 git remote -v
查看当前本地已关联的远程仓库,
main
是 Github 上的默认分支名。
完整步骤二
完整步骤三
完整步骤四
git本地仓库推送之后,github远程仓库多了个test.c
文件
谢谢阅读!
【完】
网友评论