我的git笔记

git加速

https://ghproxy.com/https://github.com/cudpp/cudpp.git
git clone https://ghproxy.com/https://github.com/triple-Mu/YOLOv8-TensorRT.git

安装git

# 删除当前git
sudo apt-get remove --purge git

# 重新安装git
sudo apt-get update
sudo apt-get install git

配置git

git config --global user.name "cqy"
git config --global user.email "你的邮箱"

fork并拉取公司代码remote

# 先fork公司仓库,这步是必须的,不能够直接推送到公司的框架里面,都是先推送到自己的分支里面
# 自己的分支里面有代码了,然后后面审核过了通过网页合并,合并就不用指令了

# 给文件夹加权限 (选做)  xxxx是我文件夹的名字, 如果git clone出现权限问题了大概率就是这个问题了
sudo chmod -R 777 xxxx

# 克隆对应的项目
git clone xxxx

# remote add upstream 这里的ssh:xxxxxxxx是公司的仓库,这样就可以拉到
git remote add upstream ssh:xxxxxxxx

# 检查一下
git remote -v

# 拉上游
git pull upstream main

# 查看可以拉的分支 这个操作可以查看公司有多少个分支是我们可以拉的
git branch -a

创建一个新的分支,这里我起了一个叫做deepstream的分支

# 这个命令等价于两个操作:git branch new-feature(创建分支)和 git checkout new-feature(切换到新分支)
git checkout -b deepstream

# 这里可以git branch看一下是不是在所属的分支
git branch

# 建议先在git remove -v 检查一下再进行推送,推送的时候选自己的orin就没有问题了
git push origin deepstream

使用 vsocde source control来管理自己的更改的代码

# 做出更改

# 点 + 号确认更改

# 填写commit信息

# push

在第二个设备上用自己的fork

这里还是很重要的,因为做AI的人很多时候训练一个设备部署一个设备,甚至测试多个不同设备部署的时候一定会用到的,这里前面部分操作跟第一个设备一样

# clone自己的fork, 这里要确定怎么真正fork到自己创建的分支
git clone xxxxxxxxxxxxx

# remote add upstream 这里的ssh:xxxxxxxx是公司的仓库,这样就可以拉到
git remote add upstream ssh:xxxxxxxx

# 拉上游
git pull upstream main

# 检查跟第一个一不一样,看看这里能不能拉到最新的
git remote -v 

# 查看可以拉的分支 这个操作可以查看公司有多少个分支是我们可以拉的
# 当看到和第一个设备上一样的你可以
git branch -a


在第二个设备使用第一个设备的分支,修改并且在第一个设备更新

# 这里的deepstream是我第一个设备弄得分支
git checkout deepstream

# 检查
git branch

# 这里修改, 如果想在第一个设备使用到最新的
git pull origin deepstream

重命名分支

# 先看自己在哪个分支上
git branch

# 假设切换到 main 分支
git checkout main

# 重命名分支
git branch -m deepstream new-branch-name

# 切换新分支
git checkout new-branch-name

# 推送这个新分支去origin, 不push的话到不了的
git push origin new-branch-name

# 检查
git branch -a

# 如果其他的设备上git branch -a没有看到这个操作建议这边使用下面这个指令
# 用于在更新远程跟踪分支信息时删除本地已经不存在的远程分支
git remote update origin --prune

在代码上建立远程连接

我一般的工作的流程是先在Github上建一个新的仓库, 然后用ssh git clone下来, 但是有的时候有可能因为忘记过滤的问题,所以这里第一步是删除.git, 也就是之前的连接问题, 如果没有这个需求删掉这一步
如果你想清除 Git 历史记录并从头开始(注意这样做将丢失所有历史记录,这通常是一个非常激进的方法),你可以按照以下步骤进行:

  1. 首先确保备份你的所有工作!

  2. 删除 .git 目录以删除所有 Git 历史记录和配置信息:

    rm -rf .git
    
  3. 现在初始化一个新的 Git 仓库:

    git init
    
  4. 确保你的 .gitignore 文件正确配置以忽略 .onnx 文件。

  5. 现在添加所有文件和目录到新的 Git 仓库:

    git add .
    
  6. 提交你的第一个提交:

    git commit -m "Initial commit"
    
  7. 如果你之前已经在远程服务器上有一个仓库,你将需要将其重命名或删除它,然后创建一个新的空仓库来推送你的新历史。 假设你正在使用 GitHub,你可以在 GitHub 网站上进行这些操作。

  8. 然后,将新的远程仓库添加为一个远程,并推送你的新历史:

    git remote add origin <your-repo-url>
    git push -u origin main -f
    

注意,使用 -f 选项(代表“force”)将强制推送到远程仓库,这意味着它将删除远程仓库上现有的所有历史记录和数据。所以再次提醒,请确保你确实想这样做,并且已经备份了所有必要的数据和历史记录。

有的时候会出现push不了的现象

src refspec main does not match any

这个可能是本地仓库中没有找到名为 “main” 的分支, 是"master"分支

# 检查分支
git branch

# 如果分支是master, 改名
git branch -m master main

# 再次Push
git push -u origin main -f

你可能感兴趣的:(小工具,git,笔记)