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

九、解决冲突

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

相关推荐
m0_4648323631 分钟前
Linux服务器上安装git lfs命令
git
贩卖纯净水.8 小时前
白月光git
git·github
爱吃瓜的猹z12 小时前
git reset 几点疑问
git·源代码管理
悟空201618 小时前
001、Git开发流程规范
git
Li小李同学Li18 小时前
git学习【持续更新中。。。】
git·学习·elasticsearch
晨春计20 小时前
【git】
android·linux·git
念幽21 小时前
Git常用命令
git
神技圈子21 小时前
【git系列】git中的那些迷惑的术语以及概念详解
git
benben0441 天前
Photoshop使用方法大全
git
ou.cs1 天前
git 删除远程分支的几种写法
git