您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码:  验证码,看不清楚?请点击刷新验证码 必填



  求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Model Center   Code  
会员   
   
 
     
   
 
 订阅
Git提交代码仓库的两种方式
 
作者: Iron_Man~
   次浏览      
 2023-4-19
 
编辑推荐:
本文主要介绍了Git提交代码仓库的两种方式。希望对你的学习有帮助。
本文来自于博客园,由火龙果软件Linda编辑、推荐。

一: 两种本地与远程仓库同步

"""

1)你作为项目仓库初始化人员:

线上要创建空仓库 => 本地初始化好仓库 => 建立remote链接(remote add) => 提交本地仓库到远程(push)

2)你作为项目后期开发人员:

远程项目仓库已经创建成功 => 复制远程仓库到本地(clone) => 进入仓库就可以进行接下来的开发

"""

1 git 远程仓库

1.创建一个空项目,如果选择.gitignore和开源许可,那么创建的创建就不是一个空仓库,会存在:
1 .gitignore
2 LICENSE 开源许可

 

2.创建完成的空仓库

提交本地版本库操作

1.初始化
git init
2.查看当前状态
git status
3.提交到暂存区
git add .
4.查询当前状态
git status
5.提交到本地的版本库
git commit -m '第一次提交'

 

提交到远程版本库操作

1.Git 全局设置:

git config --global user.name "www.zhang.com" git config --global user.email "10311112+wwwzhang-com@user.noreply.gitee.com" # 注意: 如果邮箱设置的是别人的邮箱,那么提交到远程仓库就会显示别人的头像与名称 git config --global user.email "10311112+wwwzhang-com@user.noreply.gitee.com"

 

2.增加一个远程仓库地址

git remote add origin https://gitee.com/wwwzhang-com/admin_item.git

# 提示标准写法:
git remote add 名字 远程仓库地址

 

3.查询当前存在的远程仓库

git remote

 

5.本地版本库内容提交到远程仓库

git push origin master # 把本地版本库内容,提交到远程仓库,需要输入giee的用户名密码

# 提示标准写法:
git push 远程仓库名字 分支名字

 

6.查询远程仓库

注意:本地版本库提交到远程仓库用户名密码存放位置

远程仓库操作

1.增加
-git remote add 名字 远程仓库地址
2.查看
-git remote
3.删除
-git remote remove origin
4.提交到远程仓库
-git push origin master

 

本地仓库与远程仓库提交使用(删除与新增)

# 当pycharm删除了一个文件s1.py
1.删除或者新增都会进缓存区
2.将缓存区提交到本地版本库
git commit -m '删除s1.py'

 

2.本地版本库内容提交到远程仓库

push origin master

 

3.查询远程仓库

1.本地版本库提交到远程仓库记录
2.分支master提交到远程仓库记录,测试,开发本地版本库。提交到远程仓库。

 

remote源操作

1)查看仓库已配置的远程源
>: git remote
>: git remote -v

2)查看remote命令帮助文档
>: git remote -h

3)删除远程源
>: git remote remove 源名
eg: git remote remove origin

4)添加远程源
>: git remote add 源名 源地址
>: git remote add orgin git@gitee.com:doctor_owen/luffyapi.git

5)提交代码到远程源
>: git push 源码 分支名

6)克隆远程源
>: git clone 远程源地址
"""

"""
1)通过克隆方式连接远程源,默认远程源名就叫origin;所以主动添加远程源来连接远程仓库,源码也用origin
2)本地一个仓库只需要和远程一个源进行同步,所以只需要连接一个远程源,如果还想把本地代码同步给第三个平台,那么可以通过主动添加远程源来连接第三个平台的远程仓库,此时的源码就不能再叫origin了,比如online都可以
3)pull和push都可以提供选择不同的源码,和不同的远程仓库交互
"""

 

2 采用ssh协议连接远程

连接远程服务器的两种方式

1.https方式: 使用用户名+密码认证的方式
2.ssh方式: 公钥私钥方式
1.本地生成公钥私钥
2.把公钥配置到gitee上
3.以后再提交到远程仓库就不需要输入用户名和密码了

 

使用ssj协议连接远程使用流程

生成公钥教程:https://gitee.com/profile/sshkeys

1.cmd命令 窗口执行生成公钥私钥

# 本地生成一个公钥私钥 rsa加密方式 邮箱
ssh-keygen -t rsa -C "10311112+wwwzhang-com@qq.com"

# 生成存储位置: C:\Users\86130/.ssh/id_rsa
生成到用户家路径的 .ssh文件夹下
-id_rsa # 私钥
-id_rsa.pub # 公钥

# 回车即可

 

2.把本地公钥配置到gitee上

重写配置远程仓库为ssh(以后再提交代码就不需要输入用户名密码了)

# 注意: 本地sttps,git的凭据就可以删除了

# 1.删除之前配置的https协议的远程仓库
git remote remove origin

# 2.查看当前远程仓库
git remote

# 3.配置ssh远程仓库(以后再提交代码就不需要输入用户名密码了)
git remote add origin git@gitee.com:wwwzhang-com/lufy_api.git

# 4.查询当前远程仓库
git remote

 

本地版本库提交到远程ssh仓库

# 1.修改了gitignore内容(提交至缓存区)
git add .
# 2.将缓存区提交至版本库
git commit -m '修改了gitignore'
# 3.将本地版本库提交至远程ssh仓库
git push origin master # yes,继续连接

 

3 项目创始者和项目开发者

1.如果我是项目开发者,需要把代码clone到本地

# 开发者
1)生成自己电脑的公钥,配置到自己的码云个人公钥中
2)把自己的码云用户名提供给别人,别人添加你成为项目开发者
3)自己确认添加,成为开发者,克隆开发项目,进行开发

 

# 需求: 本地lufei项目被意外删除了,需要从远程仓库克隆/下载到本地

1.https或ssh或克隆都可以,三种下载方式
# git clone https链接
git clone https://gitee.com/wwwzhang-com/lufy_api.git

下载本地成功

# 所有版本记录都存放在.git文件夹里面
git status

重新将代码提交到远程仓库

# 修改代码
1.提交至缓存区
git add .
2.提交至版本库
git commit -m '开发者最后'
3.提交至远程仓库
git push origin master

# 注意
1.出现输入用户名和密码的情况,输入即可,因为是使用https下载的
# 解决方法:
1.重新配置ssh公钥私钥即可

 

1 如果我是项目开发者,需要把代码clone到本地
-git clone https://gitee.com/liuqingzheng/luffy_api.git
-修改代码
-提交到远程
git push origin master

 

2 如果我是项目创始者,需要远程新建仓库,本地代码push上去

# 创始者顺序
1)生成自己电脑的公钥(公钥生成一次就可以了),把它提交给项目管理者
2)项目管理者添加你公钥,加入开发者,提供给你项目克隆地址
3)克隆开发项目,进行开发

# 1.项目的创始者:
可以在项目管理-->仓库成员管理-->开发者邀请其他成员加入--成为开发者

# 2.开发者可以进行以下步骤:
1.我是项目的开发者,把代码clone到本地
2.修改代码
3.提交到远程

 

4 协同开发

1 管理员,开发者(10开发者)
-能提交代码(能增删查改代码)

 

协同开发(跨版本问题)

# 协同开发(跨版本问题)
1.当开发者在开发a版本时,另两个开发者,已经提交了两个版本到远程仓库,
2.问题: 这个时候在开发a版本分支的开发者如果提交到远程仓库会造成版本冲突,严重会让2版本和3版本被自己跨版本提交的版本覆盖掉。
3.解决: 必须先拉取代码下来(让你本地保持最新)git pull origin master,在进行提交即可

 

协同开发(拉取代码与自己相同问题)

1.可能会发送的冲突,当我们拉取下来的代码与自己修改的是同一行代码,会发送冲突
2.所以解决冲突,再进行提交即可

 

协同开发(拉取代码与自己相同问题)解决上述问题完整

1.冲突解决(多人在同一个分支开发,导致冲突)

 

"""
<<<<<<< HEAD # 冲突的开始
# 自己的代码
======= # 分割线
# 别人的代码
>>>>>>> b63c408abd05b87fc492d40523240561999dba50 # 冲突的结束(版本)
"""

 

# 冲突解决:
解决方案一:
1.改同样的功能出现的冲突,看一下谁的代码更好,保留好代码,删除不好代码
解决方案二:
2.改的不是同样的功能出现了冲突,留着两个人的

# 避免冲突
1.没事就拉一下代码

 

5 线上分支合并

1.本地建立分支,同步到远端

# 本地建立分支,同步到远端
-git branch dev
-git push origin dev

 

本地建立分支,同步到远端顺序

1.创建dev分支
git branch dev

2.切换到dev分支
git checkout dev

3.提交至版本库
git commit -m 'dev分支更改'

4.将本地分支dev提交到远端的master下
git push origin dev

 

引入前提远端同步本地:

## 本地: # 1.切换到master分支 git checkout master # 2.强删除dev分支(因为没有合并普通删除不了,使用-f 强制) git branch -d dev -f

 

## 远端
1.删除上一次使用的dev分支
2.重新创建一个新的dev分支

1.远端建立分支,同步到本地

# 远端建立分支,同步到本地
-git pull origin dev
-git branch # 看不到
-git checkout dev #切到dev分支,本地就能看到了

 

远端建立分支,同步到本地顺序

1.拉取远端master分支(没事拉一下防止冲突)
git pull origin master

2.查看当前分支
git branch

3.将远端分支dev拉取到本地
git pull origin dev # 注意因为当前dev分支什么都没有,所以可能git branch查询不到,直接切换即可,在git branch就跨域看到了。

 

本地分支提交代码到远端dev分支

1.切换到dev分支
git checkout dev

2.增加数据

3.提交到缓存区
git add .

4.提交至版本库
git commit -m '提交'

5.将本地dev分支提交至远端dev分支
git push origin dev

5.查询当前分支
git branch

 

 
   
次浏览       
相关文章

每日构建解决方案
如何制定有效的配置管理流程
配置管理主要活动及实现方法
构建管理入门
相关文档

配置管理流程
配置管理白皮书
CM09_C配置管理标准
使用SVN进行版本控制
相关课程

配置管理实践
配置管理方法、工具与应用
多层次集成配置管理
产品发布管理

最新活动计划
数据建模方法与工具 12-3[北京]
基于模型系统仿真与验证 12-14 [讲座]
白盒测试技术与工具实践 12-24[线上]
LLM大模型应用与项目构建 12-26[特惠]
UML和EA进行系统分析设计 12-20[线上]
SysML建模专家 1-16[北京]
 
 
最新文章
git原理图解
Git分支管理实践
Git学习和项目应用实例
Git 天天用 但是 Git 原理你了解吗?
对比 Git 与 SVN,这篇讲的很易懂
最新课程
Git版本控制系统
配置管理与持续集成实践
配置管理方法、实践、工具与应用
持续集成与敏捷开发
配置管理实践(从组织级到项目级)
更多...   
成功案例
某单位研发中心 产品集成与服务平台
某电子制造商 配置管理与持续集成
北京 配置管理与持续集成实践
金雅拓 分布式持续集成工具链
北京 持续集成测试最佳实践
更多...