GIT

linux下:

sudo apt-get install git

git config --global user.name "Your Name"
git config --global user.email "email@example.com"

生成秘钥:

     ssh-keygen -t rsa -C "email@example.com"

  

 github添加秘钥:

 

 

 

 

 

详细介绍网站:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013743256916071d599b3aed534aaab22a0db6c4e07fd0000

git remote add origin git@github.com:Zheng-Wenkai/learngit.git          本地仓库和远程仓库关联
git remote rm origin                                                                                 取消关联

工作区-》暂存区-》本地仓库

第一步:提交到暂存区
git add

git add   .          添加所有修改文件到暂存区

git add  -i          

第二步:提交到本地仓库
git commit


提交已经被add进来的改动.
git commit -m “the commit message"       添加提示信息
git commit -a                                             会先把所有已经track的文件的改动add进来,然后提交(有点像svn的一次提交,不用先暂存). 对于没有track的文件,还是需要git add一下.
git commit --amend                                   增补提交. 会使用与当前提交节点相同的父节点进行一次新的提交,旧的提交将会被取消.

第三步:提交到远程分支
稳妥做法:

git   show  看一下
git pull    将远程分支拉下,看是否有冲突
有冲突解决方法
1. git stash                                       备份当前工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到Git栈中。
2. git pull
3. git stash pop                                从Git栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个Stash的内容,所以用栈来管理,pop会从最近的一个stash中读取内容并恢复。(此时所有的暂存都将被add需要git reset HEAD .)

 git  push                                                   提交

错误
untrack 表示是新文件,没有被add过,是为未跟踪的意思。

git clean -f             删除 untracked files
git clean -fd           untracked 的目录也一起删掉
git clean -xfd          gitignore 的untrack 文件/目录也一起删掉 (慎用,一般这个是用来删掉编译出来的 .o之类的文件用的)

加-n可以看到被删除文件

not staged 表示add过的文件,即跟踪文件,再次修改没有add,就是没有暂存的意

 

在用上述 git clean 前,墙裂建议加上 -n 参数来先看看会删掉哪些文件,防止重要文件被误删
git clean -nxfd
git clean -nf
git clean -nfd

问题:

error: Unable to create 'E:/liuguangsheng-git/2G_RTOS/.git/index.lock': File exists.

Another git process seems to be running in this repository, e.g.

an editor opened by 'git commit'. Please make sure all processes
are terminated then try again. If it still fails, a git process
may have crashed in this repository earlier:
remove the file manually to continue.
Updating 715c0868..ecf68eda

解决: 删除  .git/index.lock


查看

git diff                           文件或目录 (修改过后)    没有add
git diff --cached           文件或目录 查看(git add 修改过的信息)commit过后看不到
git remote -v             查看远程库消息

git  branch -vv             查看本地分支和远程分支的联系
git config --list        查看配置
git log          查看(commit)提交记录
git status                     查看git状态
git stash                      用于想要保存当前的修改,但是想回到之前最后一次提交的干净的工作仓库时进行的操作.

git  show    commitID         查看提交修改

撤回

撤回                              https://blog.youkuaiyun.com/lingfeng5/article/details/76167102 (未push)       https://blog.youkuaiyun.com/sodaslay/article/details/72948722(push)

(未push)
git reset HEAD .           撤回所有add 操作(会保存工作区的修改)
git reset HEAD^           撤回commit上一次的操作(会保留本次内容)
git reset HEAD id         撤回commit操作(会保留本次内容)
git reset HEAD filename         撤回某个文件的add操作

(push)

git revert                       反转  增加的删除  删除的增加

git reset --hard e377f60e28c8b84158        回退到某个版本

git reflog

当你git reset后,后悔时

git reset --hard 98abc5a

 

添加

git  add

git commit --amend        本次commit提交过后,再次提交(没有push)

git  commit --amend       文件打开会在修改问题描述

 

 场景1:

有一些修改的文件,但不需要提交,但会影响下一次提交,可以这样:

git  stash       ------- 将这些文件暂存起来,回到干净的工作区

git  stash  pop     -------找回这些文件

 

分支与仓库的区别:
分支用于多人开发使用
用来管理仓库

合并分支  当你在两个分支进行开发时  branch1    branch2  

克隆
git clone git@192.168.133.11:tmajor/hisi4.4_3798MVXX.git -b chinamobile_shandong_fs
克隆 远程仓库 并创建分支(创建的分支和远程存在的分支相同)

1. 在本地仓库创建远程分支

git  branch  branch1                         创建本地分支

git  checkout  branch1                     切换到本地分支branch1

git  push  origin   branch1                将本地分支branch1发布到远程仓库github

git  branch  -d     branch1      删除本地分支

git push origin :newBranch                      在github远程端删除一个分支

git push origin –delete newBranch        在github远程端删除一个分支 

2. 克隆远程分支进行开发

git clone git@github.com:Run-world/linux-files.git -b branch1                  克隆远程分支下来,进行开发

3. 合并分支branch1到branch2

git   pull  origin branch1        更新本地分支(在branch1)

git  merge  branch1              合并分支(在branch2)

4. branch1, branch2. 如果我想把branch1分支上的某几个commit合并到branch2分支

在branch2

git  cherry-pick   commitID1    commitID2      commitID3                  合并多个branch1的多个commit到branch2 

解决冲突

git status   查看冲突代码

<<<<<<< HEAD

本地分支代码

============

其他分支代码

>>>>>>>>>>>>

<<<<<<< Updated upstream

pull  下来的代码
=======

本地修改的代码
>>>>>>> Stashed changes

然后:

git add  file                      git  cherry-up  --continue

或者

git  commit

最后

git  pull

git push

https://segmentfault.com/a/1190000003015386

https://blog.youkuaiyun.com/fightfightfight/article/details/81039050

 git checkout -b dev origin/dev,作用是checkout远程的dev分支,在本地起名为dev分支,并切换到本地的dev分支

场景描述:

A在master下进行开发,此时发现一个bug所以就创建了一个branch1分支,后来他发现他自己搞定不了,就让B去clone这个branch1分支,两个人共同开发,在主分支master下还有c在开发,通过远程分支进行同步。

转载于:https://www.cnblogs.com/runlgs/p/9672481.html

一、数据采集层:多源人脸数据获取 该层负责从不同设备 / 渠道采集人脸原始数据,为后续模型训练与识别提供基础样本,核心功能包括: 1. 多设备适配采集 实时摄像头采集: 调用计算机内置摄像头(或外接 USB 摄像头),通过OpenCV的VideoCapture接口实时捕获视频流,支持手动触发 “拍照”(按指定快捷键如Space)或自动定时采集(如每 2 秒采集 1 张),采集时自动框选人脸区域(通过Haar级联分类器初步定位),确保样本聚焦人脸。 支持采集参数配置:可设置采集分辨率(如 640×480、1280×720)、图像格式(JPG/PNG)、单用户采集数量(如默认采集 20 张,确保样本多样性),采集过程中实时显示 “已采集数量 / 目标数量”,避免样本不足。 本地图像 / 视频导入: 支持批量导入本地人脸图像文件(支持 JPG、PNG、BMP 格式),自动过滤非图像文件;导入视频文件(MP4、AVI 格式)时,可按 “固定帧间隔”(如每 10 帧提取 1 张图像)或 “手动选择帧” 提取人脸样本,适用于无实时摄像头场景。 数据集对接: 支持接入公开人脸数据集(如 LFW、ORL),通过预设脚本自动读取数据集目录结构(按 “用户 ID - 样本图像” 分类),快速构建训练样本库,无需手动采集,降低系统开发与测试成本。 2. 采集过程辅助功能 人脸有效性校验:采集时通过OpenCV的Haar级联分类器(或MTCNN轻量级模型)实时检测图像中是否包含人脸,若未检测到人脸(如遮挡、侧脸角度过大),则弹窗提示 “未识别到人脸,请调整姿态”,避免无效样本存入。 样本标签管理:采集时需为每个样本绑定 “用户标签”(如姓名、ID 号),支持手动输入标签或从 Excel 名单批量导入标签(按 “标签 - 采集数量” 对应),采集完成后自动按 “标签 - 序号” 命名文件(如 “张三
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值