新-git-gitee代码管理(管理)

news2024/11/6 3:15:59

git忽略文件失效

git rm -r --cached . //清除缓存
git add .            //添加所有文件
git commit -m 'update .gitignore'   //提交更新.gitignore

git 提交的一些规范

开发git commit规范:

git commit --fix'我的问题'

feat:新功能
fix:BUG 修复
docs:文档变更
style:文字格式修改
refactor:代码重构
perf:性能改进
test:测试代码
chore:工具自动生成

官网:https://git-scm.com/book/zh/v2
菜鸟:https://www.runoob.com/git/git-gitee.html

git fork项目后 如何同步流程


杨天龙 3-22 10:25:29
git remote add upstream ssh://git@git.yschsz.com:20022/frontend/dq-operation.git

杨天龙 3-22 10:25:35
git remote set-url --push upstream no-pushing

杨天龙 3-22 10:25:39
git fetch upstream

杨天龙 3-22 10:34:03
git pull upstream main

参考:https://blog.csdn.net/core571/article/details/84029350
克隆 fork 的主分支

$ git clone (url)
$ cd project
$ git checkout -b featureA
# (work)
$ git commit
# (work)
$ git commit

添加 fork 后的分支

$ git remote add myfork (url)

推到特性分支的界面上

$ git push -u myfork featureA

合并至主仓库
在fork的仓库新建合并请求,来源分支为此仓库的特性分支,目标分支为主仓库的目标分支。

同步主分支上

$ git fetch origin
remote: Enumerating objects: 1, done.
remote: Counting objects: 100% (1/1), done.
remote: Total 1 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (1/1), done.
From http:///liuq/mm32_lib_head_2.0
   92fe206..7b1201c  dev        -> origin/dev

在这里插入图片描述

添加 主分支
git remote add upstream ssh://git@git.yschsz.com:20022/frontend/dq-operation.git

设置 路径 不能推
git remote set-url --push upstream no-pushing

拉代码 不会合并
git fetch upstream
拉代码 并合并
git pull upstream main

下载及秘钥配对

1.下载git https://git-scm.com/
2.查看是否有秘钥

cat ~/.ssh/id_rsa.pub

3.生成秘钥并配对 :
在用户中看是否有.ssh 文件 如果没有创建秘钥

ssh-keygen -t rsa -C  "email" (email为自己的邮箱,如123456@qq.com)

4.github 和gitee 配置:https://www.runoob.com/git/git-remote-repo.html
5.查看公钥 秘钥是否配置好(github)(gitee)

ssh git@github.com
ssh git@gitee.com

git常见命令

6.git 常见命令

mkdir  gittest         创建文件夹
git init               初始化仓库
vi     .git/config (查看.git 配置)  
vim    .git/config  查看git配置文件
git config --list --show-origin 查看配置
git config --list    查看配置
touch   index.txt   创建文件
vim     index.txt   打开index.txt 文件
git add filename    添加本地缓存
没有提交前(第一次不用管进行覆盖)
git status           查看提交状态
git commit -m'第一次提交'  提交本地并备注

git rm test.txt  删除本地库内容

修改内容
git status           查看提交状态
git add   filename   添加文件缓存
git checkout filename 还原保存的文件-本地仓库版本
git checkout -- utils\ 撤回没有提交的修改

> # 查看指定文件的历史啊版本 git log <filename>
> # 回滚到指定commit ID     git checkout <commitID><fileName>


git reset HEAD 如果后面什么都不跟的话 就是上一次add 里面的全部撤销了 
git reset HEAD XXX/XXX/XXX.java 就是对某个文件进行撤销了

reset 回滚会造成 版本比远程低 造成提交失败 因此revert 提交一个新的版本 提交同步
git revert commitID  反坐一个版本  


git commit -m'第二次提交'
git log       查看提交日志
git reset --hard commit_id  回滚到以前版本
git reset [--hard|soft|mixed|merge|keep] [commit|HEAD]   

git log  -5 查看前5条
git diff  5d57640f0689df210bbae44b5a24dad78e8e9f06   对比文件变化
git push --set-upstream origin develop     设置提交路径
git branch --set-upstream-to=origin/dev dev  设置git pull/git push 默认地址
git branch --set-upstream-to=origin/remote_branch  your_branch

多次add 后
git commit --aemnd -m '最后一次提说明'      补充说明


// hard 丢弃  soft 保存  mixed 缓存区  
// merge 保留 工作区和index之间的差异   keep 保留工作区和HEAD之间的差异。

分支

git branch develop      创建分支develop
git checkout develop    切换分支develop 
git checkout origin/master -- path/folder/filename
git checkout master      切换主分支  
git merge  develop       合并到主分支 

情形1:本地已经创建了分支dev(以dev为例,下同),而远程没有

可以通过以下2种方法在远程创建分支dev,并与本地分支进行关联:

方法1: git push -u origin dev
方法2: git push --set-upstream origin dev

情形2:远程已经创建了分支dev,而本地没有
在本地创建分支并与远程分支进行关联,也有2种方法:
方法1分为两步:
step1:先将远程分支pull到本地 git pull origin dev
step2:再在本地创建分支并与之关联,又有2种方法
git checkout -b branchName commitId   //选取远程分支的版本
(1)git checkout -b dev origin/dev     //创建 
(2)git checkout -b dev --track origin/dev     #可以简写为git checkout --track origin/dev   //关联

远程分支
git pull origin dev:dev-------两个dev分别表示远程分支名:本地分支名


选择本地有(创建) 且关联分支
$ git checkout -b DQr origin/DQr
提交当前分支
git push origin DQr
拉取当前分支
git pull origin DQr
 创建并建立
git checkout -b zhuang-hand origin/zhuang-hand


git branch -a   查看本地/远程分支
git branch -D dev  删除本地分支
git push origin --delete [branch_name]
git fetch -p   清理本地无效分支(远程已删除本地没删除的分支)
git branch | grep 'branchName'   如果分支太多,还可以用此命令进行分支模糊查找

打标签 tag

git 打标签

1 打标签  git tag <name> 

2.git tag -a v1.4 -m "my version 1.4"  打标签且增加描述

5.git log --pretty=oneline 查看历史记录

6.git tag -a v3.7.5 `d0fe218bb5d4fc745c6a26924506cea8e57cf5ad`历史打标签  (添加 描叙)

3.查看所有打的标签  git tag  或者 git tag -l  或者 git tag --list  (v1.0 v2.0 标签号)

4.git tag -l "v1.8.5*"  查看一个系列的版本

7.git show  v1.0(版本号)  展示标签号

 ssh -T 'ssh://yushi@192.168.1.126:29418/Soft2New/program/triage 查看权限

git push origin v1.5  推送单个标签

git push origin --tag 推送多个标签

git tag -d v1.4-lw  删除一个本地标签
Deleted tag 'v1.4-lw' (was e7d5add)  删除一个本地标签

git push origin :refs/tags/v1.4-lw       删除远程一个标签

git push origin --delete <tagname>    删除远程一个标签

git checkout 2.0.0  git 检出一个标签





git tag -l | xargs git tag -d #删除所有本地分支
git fetch origin --prune #从远程拉取所有信息

\#查询远程tags的命令如下:
git ls-remote --tags origin

tag常用git命令:
git tag #列出所有tag
git tag -l v1.* #列出符合条件的tag(筛选作用)
git tag [tag名] #创建轻量tag(无-m标注信息)
git tag -a [tag名] #创建含注解的tag

git push origin --tags #推送所有本地tag到远程
git push origin [本地tag名] #推送指定本地tag到远程

git tag -d [本地tag名] #删除本地指定tag
git push origin :refs/tags/[远程tag名] #删除远程指定tag

git fetch origin [远程tag名] #拉取远程指定tag
git show [tag名] #显示指定tag详细信息

回滚最新

$ git reflog                                                回滚未来

git 删除分支后找回

git fsck --lost-found
git show + id
git merge + id

参考:https://blog.csdn.net/wh_19910525/article/details/7842503

远程仓库关联

第一种方式

git clone  git clone git@gitee.com:***/giteetest.git   //克隆远程仓库
工作开展
git status
git add  filename
git commit -m'提交描叙'
git pull origin master     拉取远程主仓库
git push origin master   提交远程主仓库

第二种方式

git remote add origin https://gitee.com/kingCould/HelloWord.git  //关联远程仓库

git pull --rebase origin master的区别  直线
git pull origin master    并行结点

git push -u origin master                                    // 第一次提交 默认master (空仓库)
git push -u origin master   -f                               // 当前分支强制覆盖 远程的都没有了
git push origin master                                        // 后面提交

git remote -v                                                                        // 查看远程路径
git remote remove origin                                                      //删除远程路径

git merge:

   D--------E
  /          \  A---B---C---F----G---   test, master

git rebase

A—B—D—E—C‘—F‘— test, master
rebase好处 想要更好的提交树,使用rebase操作会更好一点。 这样可以线性的看到每一次提交,并且没有增加提交节点。 merge
操作遇到冲突的时候,当前merge不能继续进行下去。手动修改冲突内容后,add 修改,commit 就可以了。 而rebase
操作的话,会中断rebase,同时会提示去解决冲突。 解决冲突后,将修改add后执行git rebase
–continue继续操作,或者git rebase –skip忽略冲突。

vim 相关文件(liunx命令)

  • mkdir 创建目录
  • touch 创建文件
  • pwd 查看当前目录
  • ls / ls -al 查看目录下所有内容
  • cat 查看文件内容
  • cd 切换目录
  • wc 统计字数信息
  • more/less 查看文件(git 没有more 这个命令 linux 查找文件用的)
    参考:https://www.cnblogs.com/aijianshi/p/5750911.html
  • rm 删除文件
  • rmdir 删除文件夹
  • rm -rf code 删除文件夹的文件
    -mv 移动文件/文件夹(重命名)
  • cp 复制文件 vim 文件
  • head -5 index.html (文件前几行)
  • tail 查看文件后几行 tab自动匹配(2)
  • history 历史记录
  • ssh 远程登录(ssh root@gitlab.study.com)
  • >和>>重定向 (echo hello world!>READMW.md) >覆盖 >>追加 curl http://www.baidu.com>1.txt
  • wget 下载 wget https://node.js.org?dist/v4.40/node-v4.4.0.tar.gz
  • curl 网络请求 (curl http://www.baidu.com) who am i 查看当前用户
  • | 管道符 把上次的结果当做下次参数 grep 匹配内容 一般结合管道符 ls -al | grep log.txt >output.txt
 insert 输入模式

通过 Esc 切换

ctrl + v  视图模块
y 复制
p 黏贴
d 删除
按 insert    输入文件
按  Esc      退出文件
:w保存文件但不退出vi 编辑
:w! 强制保存,不退出vi 编辑
:w file将修改另存到file中,不退出vi 编辑
:wq保存文件并退出vi 编辑
:wq!强制保存文件并退出vi 编辑
q:不保存文件并退出vi 编辑
:q!不保存文件并强制退出vi 编辑
:e!放弃所有修改,从上次保存文件开始在编辑

拉取远程单个文件

# 1.初始化
mkdir localdir # 创建用于作为本地仓库的文件夹
cd localdir # 进入文件夹
git init # 在本地指定文件夹内执行此命令设置为git仓库
# 2. 拉取remote all objects信息
git remote add -f origin http://github/projectName.git # 添加远程仓库地址,实现拉取remote的all objects信息
# 3. 开启sparse clone
git config core.sparsecheckout true # 用于控制是否允许设置pull指定文件/夹,适用于Git1.7.0以后版本,本质是开启sparse clone
echo "fileName" >> .git/info/sparse-checkout # 本地目录的.git文件夹下,如果没有sparse-checkout文件则创建,在其中添加指定的文件/夹fileName,就是需要拉取的那个特定文件/夹。*表示所有,!表示匹配相反
cat .git/info/sparse-chechout # 查看
# 4. 拉取指定目录
git pull origin master # 拉取命令是一样的,只是已经通过配置文件sparse-chechout指定了目标文件/夹
————————————————
版权声明:本文为CSDN博主「quantLearner」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/The_Time_Runner/article/details/105870217

gitee 代码管理工具(管理代码问题)

https://gitee.com/

工具 git(原始) GitHub(小猫) vscode

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/544981.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

VMware16安装 CentOS7

目录 VM下载与安装 密钥 CentOS镜像下载 安装过程 问题 win11一点启动就蓝屏重启 系统安装 安装摘要 选择日期 软件选择-> 最小安装 安装位置 网络和主机名 开始安装 用户设置 完成 登录 xshell连接操作 登录成功 VM下载与安装 官网下载地址 下载 VMware Works…

恩智浦正式启动人工智能创新实践平台,为本地生态注入创新动能

中国天津——2023年5月19日——恩智浦半导体&#xff08;NXP Semiconductors N.V.&#xff0c;纳斯达克代码&#xff1a;NXPI&#xff09;今日宣布&#xff0c;设于天津的人工智能应用创新中心二期项目——人工智能创新实践平台&#xff08;以下称“创新实践平台”&#xff09;…

三、IOC容器(3)

一、IOC操作Bean管理&#xff08;外部属性文件&#xff09; 1.直接配置数据库信息 配置德鲁伊连接池引入德鲁伊连接池依赖jar包 <!--配置连接池--> <bean id"dataSource" class"com.alibaba.druid.pool.DruidDataSource"><property name&…

面了一位5年的测试,真的很失望......

最近看了很多简历&#xff0c;很多候选人年限不小&#xff0c;但是做的都是一些非常传统的项目&#xff0c;想着也不能通过简历就直接否定一个人&#xff0c;何况现在大环境越来 越难&#xff0c;大家找工作也不容易&#xff0c;于是就打算见一见。 在沟通中发现&#xff0c;由…

《HTTP权威指南 陈涓 赵振平》读书笔记

目录 第一章 HTTP概述 第二章 URL与资源 第三章 HTTP报文 第四章 连接管理 第一章 HTTP概述 1、POST和PUT的区别 POST&#xff1a;将客户端数据发送到一个服务器网关应用程序PUT&#xff1a;将来自客户端额数据存储到一个命名的的服务器资源中 2、HTTP报文&#xff1a;…

Windows下通过cwRsync备份到服务器服务器之间使用rsync备份传输

Windows下通过cwRsync备份到服务器&服务器之间使用rsync备份传输 Linux服务器配置Rsync服务端1、安装Rsync2、配置rsyncd.conf3、创建目录、密码文件并修改权限4、启动rsync服务 Windows配置cwRsync客户端1、下载并解压cwRsync客户端2、打开cmd&#xff0c;执行同步命令 Wi…

好程序员:一篇文章看懂JavaScript 学习路线!前端自学!

如果你是一名编程初学者&#xff0c;刚刚学完HTML和CSS&#xff0c;那就不得不接触JavaScript。今天&#xff0c;好程序员给大家分享一篇2023最新版&#xff0c;JavaScript学习路线。 1. HTML and CSS 语法、结构、响应式设计、引导 2. JavaScript语言基础 语法、数据、类型、…

Cloud Studio 高阶玩家:强大的 YAML 模板

Cloud Studio 高阶玩家&#xff1a;强大的 YAML 模板 1. 功能简介 编程免不了要写配置文件&#xff0c;怎么写配置也是一门学问。YAML 是专门用来写配置文件的语言&#xff0c;非常简洁和强大。 了解到一些用户在Cloud Studio开发项目的时候&#xff0c;环境上需要依赖一些组…

Java设计模式-策略模式

简介 在软件开发中&#xff0c;设计模式是为了解决常见问题而提供的一套可重用的解决方案。策略模式&#xff08;Strategy Pattern&#xff09;是其中一种常见的设计模式&#xff0c;它属于行为型模式。该模式的核心思想是将不同的算法封装成独立的策略类&#xff0c;使得它们…

软件测试项目测试报告总结

测试计划概念&#xff1a;就在软件测试工作实施之前明确测试对象&#xff0c;并且通过资源、时间、风险、测试范围和预算等方面的综合分析和规划&#xff0c;保证有效的实施软件测试。 需求挖掘的6个方面&#xff1a; 1、输入方面 2、处理方面 3、结果输出方面 4、性能需求…

蓝牙耳机怎么挑选?工程师盘点目前最值得入手的蓝牙耳机

蓝牙耳机已经成为手机标配&#xff0c;各大品牌也陆续加入蓝牙耳机行业&#xff0c;市场十分繁荣。我身为从业人员对整个行业有着深入的了解&#xff0c;考虑到很多朋友还不知道蓝牙耳机怎么挑选&#xff0c;我整理了目前最值得入手的蓝牙耳机&#xff0c;分别是&#xff1a; 1…

保护你的 shell脚本

什么是shell&#xff1f; shell 是一种脚本语言 脚本&#xff1a;本质是一个文件&#xff0c;文件里面存放的是 特定格式的指令&#xff0c;系统可以使用脚本解析器 翻译或解析 指令 并执行&#xff08;它不需要编译&#xff09; shell 既是应用程序 又是一种脚本语言&#xff…

1. python学习环境准备

文章目录 前言本专栏文章旨在记录《Python编程从入门到实践》一书的学习笔记。 一、编程环境二、使用步骤1.修改默认python版本2.终端退出python解释器3.编写.py文件4.运行.py文件 三、Python帮助文档的使用总结 前言 本专栏文章旨在记录《Python编程从入门到实践》一书的学习…

N9305语音芯片在新能源车充电桩上的方案

语音芯片技术作为近年来蓬勃发展的人工智能领域的重要组成部分&#xff0c;正在被广泛运用于诸多领域&#xff0c;并为人类生活带来了很多便利和创新。其中&#xff0c;新能源充电桩的运用就是一个很好的例子。随着电动汽车的普及&#xff0c;充电桩的需求量不断增加。为了提高…

BGP路由选择实验

测试环境拓扑图 每一种规则测试完后记得恢复初始状态&#xff01;&#xff01; 各设备BGP Router_ID为loopback 0的地址。 AR1 配置 [V200R003C00] #sysname AR1 # interface GigabitEthernet0/0/0ip address 10.1.12.1 255.255.255.0 # interface LoopBack0ip address 1.1.…

远程桌面连接怎么使用?

远程桌面连接是一种远程控制计算机的技术&#xff0c;它允许用户通过Internet或局域网远程访问另一台计算机的桌面界面。使用远程桌面连接技术&#xff0c;可以帮助用户在家里或在外出时访问工作计算机&#xff0c;或者在不同的地方协作完成任务。在本文中&#xff0c;我们将介…

k8s 基于MutatingWebhookConfiguration实现node超卖和sidecar注入

k8s 基于MutatingWebhookConfiguration实现node超卖和sidecar注入 源码在:https://github.com/Seaiii/MutatingWebhook我写了几个脚本&#xff0c;可以直接运行。 一、MutatingWebhookConfiguration原理 MutatingWebhookConfiguration 是 Kubernetes 中的一种资源对象&#…

【代码随想录】刷题Day31

1.分发饼干 455. 分发饼干 贪心的思路就是&#xff1a;小的饼干尽量去匹配胃口小的孩子&#xff0c;这样才能实现尽可能多孩子吃到。 那么代码就很好写了&#xff1a; 1.排序g和s&#xff0c;这样方便查找小的数 2.饼干的位置不停遍历&#xff0c;对应我们需要一个ret代表当前…

语义分割mask转json

文章目录 1 mask2json ——代码实现1.1 通过mask获取每个类别对应的灰度值1.2 mask 转 json 2 mask2json ——利用工具转2.1支持数据增强2.2 支持多种格式转换 本文介绍两种语义分割mask转json的方法&#xff1a; 方法1&#xff1a;是参考语义分割mask转json&#xff08;改进版…

教你用python的Streamlit库制作可视化网页应用

目录 步骤1&#xff1a;安装 Streamlit步骤2&#xff1a;创建一个新的 Python 文件步骤3&#xff1a;导入必要的库步骤4&#xff1a;编写应用程序代码步骤5&#xff1a;运行应用程序常用组件 当涉及到编写交互式应用程序时&#xff0c;Streamlit 是一个非常流行和强大的 Python…