软件构造-Git基本使用


前言

在哈工大软件构造的实验课中,老师要求使用Git作为版本控制工具进行版本管理,使用后深刻地体会到了Git的强大之处。但是同时,使用过程中也踩了不少坑、遇到不少麻烦,所以特此记录一下Git的一下基本使用。

一、Git是什么?

Git,全称是分布式版本控制系统,git支持分布式部署,可以有效、高速的处理从很小到非常大的项目版本管理。分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。

二、使用步骤

1.Git安装

git官网下载,根据操作系统选择即可,安装的选项部分可以参考MIT的实验指导或者网上的博客。
官网内容


2.Git建立本地仓库

建立本地仓库方法一般有两种,一种是直接初始化本地仓库,另一种是克隆现有的仓库。

2.1 初始化本地仓库

首先先选定一个目标文件夹,然后右键菜单中选择git bash here,然后输入如下指令:

git init
git add .
git commit -m "初始版本号"

这样就能完成初始化。

2.2 克隆现有的仓库

当想直接复制已有的仓库时,可以使用git中clone指令,具体格式为git clone + [url],例如:

git clone https://github.com/XXXX.git

这样会在当前目录下建立克隆的仓库,也可以用如下命令给本地仓库重命名:
git clone https://github.com/XXXX.git s1

另外,Git 支持多种数据传输协议,可使用 https:// 协议,也可以使用 git:// 协议或者使用
SSH 传输协议。


3.Git基本指令

git add .

add指令,后面可以加 . 表示将当主分支下所有文件添加到暂存区中,也可以在add后面加具体文件护着文件夹名,表示将它们加到暂存区。

git status

查看文件当前在本地仓库对比上一个版本的修改状态。

git mv a.txt a

mv指令,用于修改文件名,例子中将a.txt改成a

git rm --cached c

rm指令用于删除文件,–cached 会将后面的文件撤出暂存区(但是不会在本地删除该文件),将–cached换为-f会将本地文件一并删除。

git commit -m “版本号”

commit指令,将暂存区的内容上传到本地仓库,其中-m后引号内的内容可以任意更改,是对本次提交的解释说明。

git log

log指令用于查看历史提交记录。


4.Git与github连接

4.1 创立github仓库

github可以作为Git远程仓库,方便我们进行版本管理。
首先就需要创建你的github账号,并建立一个仓库。

4.2 初始化本地Git

用如下指令设置本地仓库的用户名和邮箱,可以直接使用github的用户名和用户邮箱。

git config --global user.name “XXXX”

git config --global user.email “xxxx@xxx.com”

4.3 github连接Git

使用如下指令生成秘钥,注意一直回车即可,然后找到id_rsa.pub(公钥)位置,一般在生成语句中会有,用记事本打开并复制内容。

ssh-keygen -t rsa

然后进入github中,头像/Settings/SSH and GPG keys/New SSH Key,将复制的
id_rsa.pub内容复制到Key中,Title随便起,然后保存。

4.4 github连接Git

然后进入项目的本地仓库,如果还不是仓库参考步骤二。然后如下指令添加远程仓库。git@github.com应为仓库的地址,查找方式见下图。

git remote add origin git@github.com
找到仓库地址

4.5 本地仓库上传到github

然后进入项目的本地仓库文件夹,右键git bash hera,add添加文件到暂存区,commit到本地仓库后,使用如下指令即可上传到github。
git push origin master


总结

这就是git的下载安装和基本使用,基本可以完成分布式版本控制,有更新的使用操作会继续补充。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值