栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Git命令的使用,配置Github、Gitee(同时配置多个git仓库)、mac电脑找不到.pub文件/查看仓库源、查看所在分支、 合并分支、一个项目连接多个仓库、一个项目多个分支、 回滚到上一个版本

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Git命令的使用,配置Github、Gitee(同时配置多个git仓库)、mac电脑找不到.pub文件/查看仓库源、查看所在分支、 合并分支、一个项目连接多个仓库、一个项目多个分支、 回滚到上一个版本

Git命令
  • (一) git命令
    • 1.1 将本地的项目 上传到 对应的仓库 (步骤)
    • 1.2 从Git仓库 中 克隆项目(步骤)
    • 1.3 `git status ` 查看状态
    • 1.4 `git checkout -b develop` 切分支
    • 1.5 `git branch` 确认当前所在分支
    • 1.6 `git remote -v ` 查看仓库源
    • 1.7 删除本地不需要的分支
  • (二) Git 同时使用 github gitee(同时使用多个git仓库)
  • (三)一个项目连接多个仓库
  • (四)、合并分支 merge
  • (五)、`git revert -n 版本号`撤销某个版本的操作
  • (六)、`git reset --hard 版本号`
  • (七) 恢复 单个文件 到上一版本
  • (八)恢复多个文件/恢复文件夹


(一) git命令 1.1 将本地的项目 上传到 对应的仓库 (步骤)

这里的本地开发的文件 不是从git仓库中clone下来的。

1.1 去自己做的文件目录下,打开git.bash (进去)
1.2 初始化: git init 对应的文件中 会多一个.git文件
1.3 连接远程仓库 git remote add origin 仓库地址

  • 报错:
    git error : remote origin already exists
  • 解决方法:
    1.1.1 先删除远程 Git仓库 git remote rm origin
    1.1.2 再添加远程Git仓库 git remote add origin 仓库地址

1.1.4 git add .
指定一个文件: git add src/views/page.vue
1.1.5 git commit -m "随意写"
1.1.6 git pull origin develop

  • 报错
    fatal: refusing to merge unrelated histories
  • 解决
    git pull origin master --allow-unrelated-histories

1.1.7 git push origin develop
完成

1.2 从Git仓库 中 克隆项目(步骤)
  • 对项目 有新修改 更新到仓库:
    1.2.1 git clone 仓库地址
    1.2.2 git add .
    1.2.3 git commit -m "随意写"
    1.2.4 git pull origin develop
    1.2.5 git push origin develop
  • 完成
1.3 git status 查看状态

1.4 git checkout -b develop 切分支

大项目中 前端一般在develop分支上

1.5 git branch 确认当前所在分支

git branch -a查看所有分支,包括远程分支

1.6 git remote -v 查看仓库源 1.7 删除本地不需要的分支

1.7.1 删除本地分支 git branch -d 分支名
1.7.2 删除远程分支 git push origin --delete 分支名


(二) Git 同时使用 github gitee(同时使用多个git仓库)

2.1 生成SHH公钥

  ssh-keygen -t rsa -C "xxxxxxxxxx@xxx.com" 

2.2 文件 命名

//这个文件自己命名 是为了区分 github 和 gitee
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/liujing/.ssh/id_rsa): id_rsa_github

2.3 前面回车 后 提示输入该密钥的密码——直接回车

Enter passphrase (empty for no passphrase): 

2.4 再次直接回车

Enter same passphrase again: 

2.5 出现如下界面——成功

Your identification has been saved in id_rsa_test.
Your public key has been saved in id_rsa_test.pub.
The key fingerprint is:
SHA256:hUxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxV4 263xxxx631@qq.com
The key's randomart image is:
+---[RSA 3072]----+
|     .o     . .  |
|     .           |
|    o   . .      |
|     +   .       |
|    +  +S  .     |
|. ===.+ ... + .  |
|..+Eo+o..oo= o   |
|o+==OX ....#.    |
|*=+===+EoO.      |
+----[SHA256]-----+

2.6 打开文件 id_rsa_github.pub,复制文件中的公钥
我的路径是:C:Users64802.ssh 下面

mac 电脑上可能找不到对应路径:按 command + shift +G,在弹框中 输路径就可以了

2.7 进入自己的github仓库
在 设置 中,添加新的SSH——将上面复制的公钥粘贴进入就好

2.8 gitee配置方式如上,在命名区分github就可以:

//这个文件自己命名 是为了区分 github 和 gitee
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/liujing/.ssh/id_rsa): id_rsa_gitee

2.9 添加配置文件(重点)

在 .ssh/目录下 ,新建config文件:写入如下的内容

# github
Host github.com
HostName github.com
PreferredAuthentications publickey //这一行 可不写
IdentityFile ~/.ssh/id_rsa_github

# gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey // 这一行 可不写
IdentityFile ~/.ssh/id_rsa_gitee

//现在自己电脑上用的 
Host github.com
    HostName github.com
    IdentityFile ~/.ssh/id_rsa

Host gitee.com
    HostName gitee.com
    IdentityFile ~/.ssh/id_rsa_gitee

Host 192.168.1.110
     HostName 192.168.1.110
     IdentityFile ~/.ssh/id_rsa_gitblit

2.10 测试连接

# 测试 Github 连接
$ ssh -T git@github.com

# 测试 Gitee 连接
$ ssh -T git@gitee.com

第一次连接需要添加到可信任列表

The authenticity of host 'github.com (13.250.177.223)' can't be established.
ECDSA key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
ECDSA key fingerprint is MD5:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Are you sure you want to continue connecting (yes/no)? yes     //输入 yes 并回车

2.11 完成
出现如下信息 表示完成 可以使用SSH

# Github
Hi Yourname! You've successfully authenticated, but GitHub does not provide shell access.

# Gitee
Hi Yourname! You've successfully authenticated, but GITEE.COM does not provide shell access.

(三)一个项目连接多个仓库

3.1 连接多个git仓库时 同时 pull push

PS D:SCLWork文荣手机端W1穿综报产信息报表项目wenrongapp> git remote set-url --add origin ssh://scl@192.168.1.110:29418/~scl/wenrong_app_chuanzongbaobiao.git 
PS D:SCLWork文荣手机端W1穿综报产信息报表项目wenrongapp> git remote -v
origin  git@gitee.com:shen-cailing/wenrong-app.git (fetch)
origin  git@gitee.com:shen-cailing/wenrong-app.git (push)
origin  ssh://scl@192.168.1.110:29418/~scl/wenrong_app_chuanzongbaobiao.git (push)
PS D:SCLWork文荣手机端W1穿综报产信息报表项目wenrongapp> 

3.2 只是简单的想要给项目添加多个git仓库

git remote  add workgit  '仓库地址'

workgit 自己命名的
后续pull push 都是用 (workgit):

git pull workgit master
git push workgit master

刚刚新建git仓库时:将项目添加到仓库

 git push -u gitee platform
(四)、合并分支 merge

首先有两个分支,一个是master分支(本地开发分支),一个prod分支(正式分支);
在master分支上开发完,将master分支合并到prod分支上

4.1 步骤(都是在 本地分支上操作)
(1) 在本地master分支上开发完后,先pull 再push 将修改的内容都更新一下。
(2) 将分支切换到 本地prod分支 (注意:本地分支没有origin)(也可以用 git checkout master 切换)

(3) 切换到prod分支后,先pull一下,代码同步。
(4) 合并 - 合并分支 (也可以用git命令:git merge master 合并)
注意:在 ‘合并到的分支’ 下(这里是prod分支) 操作,选择合并的分支(这里是本地的master)
一下图只是看 分支-合并分支在哪里:

(5) 合并操作完成,push 就好(这里是prod分支上操作)

(五)、git revert -n 版本号撤销某个版本的操作

特别注意:git revert -n 版本号 只是撤销这个版本号 提交的修改,不影响其他版本号

步骤:

5.1 git log 查看所有的版本信息

5.2 git revert -n 版本号 撤销到对应的版本号


5.3 执行完前面的代码 会产生 冲突
执行完冲突后,git add . git commit -m '提交信息' git push origin master push到仓库

5.4 再来查看版本信息 会发现多了一个版本信息

5.5 最后的结果

注意:从结果可以看到,只撤销了对应版本的操作(这里是page.vue文件不见了),但是不影响huigun.vue的文件

(六)、git reset --hard 版本号

退回到 这个版本状态,其后面的版本都会没有

步骤:
6.1 git log 查看所有版本:

6.2 git reset --hard 版本号 回退到对应的版本号

注意仔细看 回退的结果 中间的版本号里的信息都不见了:

6.3 将结果推送上去

注意:git push 可能会报错 需要git push -f强制推送

6.4 代码结果:

(七) 恢复 单个文件 到上一版本

7.1查看对应文件的版本信息

7.2 git checkout 版本信息 文件路径

7.3将代码 push 上去

7.4结果:

(八)恢复多个文件/恢复文件夹
//恢复单个文件
git checkout 版本信息 src/views/ceshi.vue

//恢复多个文件 用通配符 *
git checkout 版本信息 src/views/ce*.vue

//恢复文件夹
git checkout 版本信息 src/views/
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/679303.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号