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

九、解决冲突

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

相关推荐
stewie61 小时前
在IDEA中使用Git
java·git
晓理紫10 小时前
使用git lfs向huggingface提交较大的数据或者权重
git
我不是程序猿儿11 小时前
【GIT】sourceTree的“当前分支“,“合并分支“与“检出分支的区别
git
_OLi_18 小时前
IDEA中新建与切换Git分支
java·spring boot·git
PyAIGCMaster1 天前
ubuntu下安装 git 及部署cosyvoice(1)
git
维__kxs76671 天前
小程序 + AI 自动直播:一部手机开启抖音挂载小程序流量主变现之旅
git·eclipse
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ1 天前
GIT GUI和 GIT bash区别
开发语言·git·bash
zhuyan1081 天前
【git】使用记录
git
KrisZhang102 天前
Git分支
git·1024程序员节
孤影&碧空2 天前
书生大模型第三关Git 基础知识
git