• 【Git】Git 学习笔记_操作远程仓库


    1. 远程仓库

    步骤:

    1.注册第三方托管平台网站账号

    2.新建仓库得到远程仓库 Git 地址

    3.本地 Git 仓库添加远程仓库原点地址

    命令:git remote add 远程仓库别名 远程仓库地址

    例如:git remote add origin https://gitee.com/lidongxu/work.git

    4.本地 Git 仓库推送版本记录到远程仓库

    命令:git push -u 远程仓库别名 本地和远程分支名

    例如:git push -u origin master

    完整写法:git push --set-upstream origin master:master

    2. SSH 配置和克隆仓库

    ssh-keygen -t rsa -C "xxx@qq.com"
    
    • 1

    回车后出现以下内容,直接回车:

    Generating public/private rsa key pair.
    Enter file in which to save the key
    (/Users/your_user_directory/.ssh/id_rsa): (按回车键)
    Enter passphrase (empty for no passphrase): (按回车键)
    Enter same passphrase again: (按回车键)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    这样密钥文件就生成了,默认在用户目录下,如:C:\User\xxx.ssh\ 这个文件夹中。其中的xxx是你的windows用户名。

    然后将公钥添加到 github 中。

    在C:\user\xxx.ssh\文件夹中找到id_rsa.pub这个文件,用文本编辑器(如记事本)打开,复制里面的所有内容。

    登陆 github 账号,点击settings-SSH and GPG keys-New SSH key,在 Title 中取一个名字(任意),key 中粘贴你刚刚复制的内容。然后点击 Add SSH key 即可。

    然后测试是否成功。

    ssh -T git@github.com
    
    • 1

    出现以下结果即为成功。

    Hi Shelden-Hao! You've successfully authenticated, but GitHub does not provide shell access.
    
    • 1

    然后就可以克隆仓库。

    git clone git@github.com:Shelden-Hao/js-learning.git
    
    • 1

    进行 add 和 commit ,但是,这两条都是对本地仓库的操作。将更新内容对远程仓库生效还需要其他操作。更新推动内容和拉取推送内容。

    git push  
    git pull 
    
    • 1
    • 2

    比如:

    git pull origin main:main
    
    • 1

    省略默认拉取仓库别名为 origin 的 main 分支。

    3. 关联本地仓库和远程仓库

    git remote add origin git@github.com:Shelden-Hao/js-learning.git   // 从本地关联远程仓库
    git remote -v  // 查看关联的远程仓库
    
    • 1
    • 2

    在这里插入图片描述
    然后。

    git push -u origin main:main
    
    • 1

    :左右分别为本地仓库和远程仓库的分支名称。origin 是仓库别名。

    4. gitee 和 gitlab 的使用

    gitee 的使用和 github 的使用几乎一致。

    gitlab 主要用于私有化部署。

    5. VS Code 中的 Git

    在这里插入图片描述

    改变文件内容后。

    在这里插入图片描述

    第一个图标表示打开文件。

    第二个图标表示放弃更改。

    第三个图标表示添加到暂存区。

    最后一个图标表示更改的状态。相当于 git status

    在这里插入图片描述

    然后进行添加文件。

    绿色 U 表示未被跟踪的文件。

    commit 提交到本地仓库。

    Sync Changes 同步更新,提交到远程仓库。

    6. 分支

    本质上是指向提交节点的可变指针,默认名字是 master

    注意:HEAD 指针影响工作区/暂存区的代码状态

    git branch  // 查看分支列表
    git branch branch-name  // 创建分支
    git checkout branch-name  // 切换分支(默认)或者恢复文件
    git switch branch-name  // 切换分支(推荐)
    git merge branch-name  // 合并分支 branch-name 到目前分支下(一般为master)
    git branch -d branch-name  // 删除分支(已合并)
    git branch -D branch-name  // 删除分支(未合并)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    分支合并后仍然存在,需要手动删除。

    6.1 解决合并冲突

    不同分支中,对同一个文件的同一部分修改,Git 无法干净的合并,产生合并冲突。

    git diff  // 查看冲突的具体内容
    
    • 1

    解决:

    1.打开 VSCode 找到冲突文件并手动解决

    2.解决后需要提交一次记录

    7. 多人协同开发

    需求:小传新代码共享给小智

    步骤:

    1.小传开发代码 -> 工作区 -> 暂存区 -> 提交 -> 拉取(可选)-> 推送

    2.小智 -> 拉取(后续也可以开发代码 -> … -> 推送)

    3.想要看到别人同步上去的最新内容:git pull origin master 等价于

    git fetch origin master:master(获取远程分支记录到本地,未合并)

    git merge origin/master (把远程分支记录合并到所在分支下)

  • 相关阅读:
    SpringBoot前端后端分离之Nginx服务器
    CDN策略好坏的重要性
    Information Sciences 2022 | 利用图嵌入和图神经网络实现社交网络中的影响力最大化
    MySQL数据库进阶篇
    STM32用超声波测距模块实现测距
    计算机视觉 回头重新理解图像中的矩
    老挝市场最全开发攻略
    【PyTorchVideo教程01】快速实现视频动作识别
    typeScript 学习笔记(二)
    spring中有哪几种加载ApplicationContext.xml的方式呢?
  • 原文地址:https://blog.csdn.net/XiugongHao/article/details/134273363