当前位置: 首页 > news >正文

Git代码下拉更新推送操作用法整理

部分代码需要git 下拉使用,会出现各种问题,这里整理了一份自己经常用,有效的方法,仅供参考,(自己用是有效的

1、首先本地安装GIT:地址:https://git-scm.com/(本地有的话,就忽略)
2、下载好之后,配置好基础环境
3、如果首次下拉代码,现在本地创建一个文件,或者直接点击你要下拉代码的文件,右键点击选择,就可以看到截图,截图展示的自己当前的目录,

下拉代码有很多种,以下这几个是经常用的,可以参考一下

在这里插入图片描述
在这里插入图片描述
然后通过以下命令操作,复制git 上面的代码:
在这里插入图片描述
开源代码,或者不用权限的代码,可以直接
git clone 复制的地址:(git clone <仓库URL> [本地目录名])


# 克隆到当前目录(使用仓库名作为文件夹名)
git clone https://github.com/username/repository.git# 克隆到指定目录
git clone https://github.com/username/repository.git my-project# 克隆到当前目录的指定文件夹
git clone https://github.com/username/repository.git ./

如果是ssh协议的是不一样的

SSH 协议(需要配置密钥):
git clone git@github.com:username/repository.git

还有另一种:是带token的,这个token 需要自己去申请获取,在github上我记得是可以的,仅供参考

Personal Access Token(推荐)
git clone https://token@github.com/username/repository.git

下拉成功后,就可以看到代码文件了,这时候可以通过git命令操作想要操作的,也可以结合开发工具去操作,

# 查看本地分支
git branch# 查看所有分支(包含远程)
git branch -a# 查看分支详情(最后提交信息)
git branch -v# 查看已合并到当前分支的分支
git branch --merged# 查看未合并到当前分支的分支
git branch --no-merged
# 切换到已有分支
git checkout develop
git switch develop  # 新命令,更安全# 切换到上一个分支
git checkout -
git switch -  # 新命令# 创建并切换到新分支
git checkout -b feature/new-feature
git switch -c feature/new-feature  # 新命令# 基于远程分支创建本地分支
git checkout -b feature/remote-feature origin/feature/remote-feature
# 获取远程更新(不自动合并)
git fetch origin# 拉取并合并当前分支(常用)
git pull origin develop# 等同于
git fetch origin
git merge origin/develop# 拉取并使用变基(推荐,保持历史整洁)
git pull --rebase origin develop# 强制拉取(丢弃本地修改)
git fetch origin
git reset --hard origin/develop
# 查看本地与远程的差异
git status# 查看具体文件变更
git diff# 查看暂存区的变更
git diff --staged# 查看与远程分支的差异
git fetch origin
git log HEAD..origin/develop --oneline
# 添加所有更改到暂存区
git add .# 添加特定文件
git add src/main.py config/settings.py# 提交更改
git commit -m "feat: 添加用户登录功能"# 添加并提交(已跟踪的文件)
git commit -am "fix: 修复登录bug"# 修改上一次提交
git commit --amend
# 推送到远程同名分支
git push origin feature/new-feature# 推送到远程并建立跟踪关系
git push -u origin feature/new-feature# 强制推送(谨慎使用)
git push -f origin feature/new-feature# 删除远程分支
git push origin --delete feature/old-branch# 推送所有分支
git push --all origin
# 切换到目标分支
git checkout develop# 合并特性分支
git merge feature/new-feature# 合并时创建提交记录
git merge --no-ff feature/new-feature

很多常用操作也可以去搜索或者AI查看 在这里举例子: 我经常用到的:


develop 和master 分支

# 查看本地分支
git branch# 切换到目标分支
git checkout test
# 或者使用新命令
git switch test
# 如果 test 分支不存在,先创建并切换
git checkout -b test# 确认当前分支
git branch
#   main
# * test# 查看本地提交历史
git log 
# 输出:
# c123456 (HEAD -> test) 提交C: 本地修改用户界面
# b234567 提交B: 添加用户模型
# a345678 提交A: 项目初始化# 拉取远程test分支并合并
git pull origin test# 查看合并后的历史(注意版本问题,有的可以实行) 点击Q可以退出
git log --oneline --graph
git log --oneline --graph --all
git log --oneline --graph --all --decorate# 添加所有更改到暂存区
git add .
# 或者添加特定文件
git add src/main.py# 提交更改
git commit -m "feat: 添加用户登录功能"# 推送到远程同名分支
git push origin test
# 推送到远程并建立跟踪关系(第一次推送时)
git push -u origin test# 推送到当前分支跟踪的远程分支
git push
# 执行推送后,观察输出
git push origin test
# 查看本地与远程的差异
git fetch origin
git log origin/test..test --oneline
# 如果输出为空,说明推送成功,本地和远程一致
# 如果有提交显示,说明这些提交还没有推送到远程

分支合并:

# 查看所有分支状态
git branch -av# 查看 develop 分支的提交
git log develop --oneline -5# 查看 master 分支的提交
git log master --oneline -5# 检查状态
git status# 如果有未提交的更改,先处理
git stash  # 或 git commit# 1. 切换到 master 分支
git checkout master
# 或
git switch master# 2. 拉取最新的 master 代码
git pull origin master# 3. 合并 develop 分支
git merge develop# 4. 推送合并结果
git push origin master

当合并的时候发现出现这些信息:可以这样子操作:这个是Git 合并时打开的编辑器界面,你需要输入合并提交信息。

,# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
~

步骤:

  1. i 进入插入模式
  2. 输入:release: 合并 develop 到 master
  3. Esc 退出插入模式
  4. 输入 :wq 保存并退出
  5. 按 Enter 确认
    在这里插入图片描述
    验证是否合并记录:
    在这里插入图片描述

就发现可以了,如果还不可以,可以直接操作下面的:

# 1. 先退出当前编辑器
# 按 Esc,然后输入 :q! 按 Enter# 2. 重新合并并指定消息
git merge develop -m "release: 合并 develop 到 master"# 3. 推送
git push origin master
http://www.dtcms.com/a/482806.html

相关文章:

  • 西安做网站的公司wordpress 调试php代码
  • 用C++实现一个高效可扩展的行为树(Behavior Tree)框架
  • 3Dockerfile镜像制作,镜像分层机制
  • 【Linux】Linux工具漫谈:yum 与 vim,高效操作的 “左膀右臂”
  • 网站免费优化网站推广运作怎么做
  • 【从零开始java学习|第二十三篇】泛型体系与通配符
  • 有哪些做室内设计好用的网站wordpress+chrome+扩展
  • CRMEB多商户系统(PHP)v3.3正式发布,同城配送上线[特殊字符]
  • Flink 作业通用优化方案
  • deepseek改写的dlx算法求解数独rust程序
  • Leetcode 3715. Sum of Perfect Square Ancestors
  • 四川省建设厅门户网站男女做床网站
  • 语义循环的幽灵——循环解释悖论对NLP深层语义分析的影响与启示
  • 项目沟通与冲突管理
  • 网站引导页案例免费的制作手机网站平台
  • linux学习笔记(32)网络编程——UDP
  • 2025全新三防平板科普:5G-A+卫星通信+国产化
  • 电商网站建设懂你所需wordpress一句话木马
  • 「机器学习笔记14」集成学习全面解析:从Bagging到Boosting的Python实战指南
  • 小迪安全v2023学习笔记(一百三十一讲)—— Web权限提升篇划分获取资产服务后台系统数据库管理相互转移
  • Java高并发知识
  • 2025年渗透测试面试题总结-204(题目+回答)
  • 复制 201/220 Dump 需要用什么?
  • idc网站备案中国与菲律宾最新事件
  • 深圳网站建设公司首选宜昌营销型网站
  • 美丽乡村 村级网站建设网站 繁体 js
  • Git 大文件上传失败深度解析与终极解决方案_含 macOS_Windows 全流程20251014
  • Starting again myself 03
  • 网站改版申请网站备案密码使用
  • 视频模型的主流结构