git 连接 github 与 gitee

一、配置用户名与邮箱

git 操作之前要先配置好用户名与邮箱。

配置用户名:$git config --global user.name 名称

查看用户名:$git config user.name

配置邮箱:$git config --global user.email 邮箱

查看邮箱:$git config user.email

二、初始化

**情况一:**决定将某个文件夹作为本地仓库时,需要进行初始化。

**情况二:**如果将远程仓库 clone 到本地后,得到的文件夹则会自动成为本地仓库。

初始化:$git init

三、查看文件状态

文件状态根据所在位置不同,分为 untracked、unstaged、staged 三种。

命令:$git status

其中 untracked 和 unstaged 都处于未添加的状态,需要用 git add .** 来添加至暂存区,也就是 staged 状态,但此时还没有加入本地仓库,需要使用 **git commit -m "提示信息" 添加至本地仓库,这样才算得上一次提交,而**$git log**统计的正是每次 git commit 的情况。

四、查看日志

命令:$git log options

options 选项有如下几种,可写成:$git log --all --pretty=oneline --abbrev-commit --graph

选项含义:

--all 表示显示所有分支

--pretty=oneline 表示将信息显示为一行

--abbrev-commit 表示简化 commit ID

--graph 表示图形化显示

五、回退至某个版本

命令:$git reset --hard commit ID

commit ID 可以通过 git log 查看;对于删除的日志,则可以通过 git reflog 获取 commit ID。

六、添加忽略文件

每次添加时,一般使用 **$git add .**添加全部。如果不想添加某些文件,可以在 .gitignore 文件中提前设置。

**第一步:**使用 touch 命令创建 .gitignore 文件。

**第二部:**使用 vim 在 .gitignore 文件中编辑要忽略的文件名称。

七、分支

master 为主分支,有时候根据工作需要会添加新的分支,以开发新的功能。

创建分支:$git branch 分支名

切换分支: $git checkout 分支名

在 git log 中 head 指向的就是当前分支,此外在 git bash 窗口中也可以直接看到当前在哪个分支。

创建并切换分支:$git branch -b 分支名

查看分支: $git branch

删除分支: $git branch -d 分支名

强制删除分支: $git branch -D 分支名

强制删除的情况适用于某个分支做了修改,但未提交,此时如果强制删除,则删除分支的同时,修改也同时被丢弃。

八、远程仓库

远程仓库一般是 github 或者 gitee,注册完成之后新建一个远程仓库,一个仓库只能存放一个项目。实现远程仓库与本地仓库的连接有两种方法,一种是通过 http 实现,另一种通过 SSH 实现。

使用 http 连接时需要输入账号密码,所以一般采用 SSH 公钥连接。

首先在 git bash 中输入**ssh-keygen -t rsa**生成公钥,然后通过 **cat ~/.ssh/id_ras.pub**查看公钥。将公钥复制粘贴至远程仓库,即可完成连接。

验证是否连接:$ ssh -T git@gitee.com

(一)添加远程仓库

命令:$git remote add origin SSH_url/http_url

两种 url 都可以作为地址添加至本地仓库的远程仓库对象表中,但后续使用时对应的连接协议不同。

添加远程仓库与密码无关,不是自己的远程仓库也可以添加至自己本地仓库的对象表中,但肯定 push 不上去。

(二)查看远程仓库对象表

命令:$git remote -v

一个本地仓库可以添加很多远程仓库,通过该命令可以查看远程仓库名称。

如果加上选项**-v**,不仅会显示远程仓库名称,也会显示出对应该仓库的 url。

$git remote 仓库名-url表示查看指定远程仓库的 url。

(三)推送

命令:$git push 远程仓库名/远程仓库的url 本地分支名:远程分支名

例如:$git push origin master:master

如果是在一个项目上做的修改,一般用 $git push 就足够。

(四)拉取和抓取

拉取:$git pull 远程仓库名 分支名

拉取表示将远程仓库的修改抓取至本地后顺带进行了 merge 合并。

抓取:$git fetch 远程仓库名 分支名

抓取表示将远程仓库的修改抓取至本地后未进行 merge 合并

上述不指定分支名的话,默认拉取/抓取所有分支。

(五)克隆

命令:$git clone http_url

九、解决冲突

不论是本地仓库的冲突,还是远程仓库的冲突都是在本地解决。如果是本地仓库的冲突,直接修改文件,再提交。如果是远程仓库的冲突,先拉取到本地,在本地将文件修改之后,再提交。

相关推荐
中科三方24 分钟前
DNS解析中的“委派“是什么意思?如何正确配置NS记录?
git·github·dns解析
OPEN-F1 小时前
Python进阶教程:Git版本控制与团队协作
git·python·elasticsearch
深念Y3 小时前
Fork 仓库瘦身指南:从 90MB 到 11MB
git·github·仓库·历史·瘦身·fork·上游
叫我少年3 小时前
Git SSH 配置:从生成密钥到远程连接
git·后端
阿火~12 小时前
Git 项目配置与推送完整指南
git
j7~14 小时前
【Git】《Git 系列指南(二):Git基本操作与 reset 三种模式》
运维·git·git安装·git基本操作·git配置·创建git仓库·git reset三种模式
多加点辣也没关系15 小时前
Git - 的安装与使用
大数据·git
帅次15 小时前
Git 常用命令汇总
git·软件工程·开发工具·版本控制·git教程·代码管理·git命令
陈皮波比茶15 小时前
git学习
git·学习
那年窗外下的雪.1 天前
AIDC 学习日志|第 14 天|MAC Flapping 与 EVPN 多归属分层排障
网络·git·学习·macos·github·spine