使用git命令行的方式,将本地项目上传到远程仓库

在国内的开发环境中,git的使用是必不可少的。Git 是一款分布式版本控制系统,用于有效管理和追踪文件的变更历史及协作开发。本片文章就来介绍一下怎样使用git命令行的方式,将本地项目上传到远程仓库,虽然现在的IDE中基本都配置了git的可视化操作,但我们还是应该掌握使用命令行的形式上传文件。

1、下载git

git的官网:Git (git-scm.com)

2、初始化本地仓库: 打开命令行或终端,导航到你的项目目录,运行以下命令来初始化一个 Git 仓库:

git init

3、添加文件到仓库: 将项目中的所有文件添加到 Git 跟踪列表中:

git add .

注意这个命令的前提是在项目的根路径下才可以。 add后面的“.”表示当前目录下的所有文件;

也可以上传特定的文件到git中:

git add <filename>

4、提交更改: 提交你的更改到本地仓库:

git commit -m "初始化项目"

5、创建远程仓库: 如果你还没有远程仓库,你需要在支持 Git 的服务上创建一个,比如 GitHub、Gitee、GitLab 或 Bitbucket。如果你已经有仓库了,那么可以直接使用仓库的地址

6、添加远程仓库链接: 将你的本地仓库与远程仓库关联起来。首先,复制远程仓库的 URL。然后运行:

git remote add origin <remote-repository-url>

注意,这里的 <remote-repository-url> 是你的远程仓库地址。

7、验证远程仓库链接: 检查远程仓库是否已正确添加:

git remote -v

可以用来检查我们远程仓库是否正确添加,如果能看到远程仓库的地址,就表示我们的远程仓库已经添加进来了。

如图所示:

8、推送到远程仓库: 将你的本地提交推送到远程仓库:

git push -u origin master

如果你的远程仓库使用默认分支名 main,而不是 master,相应地替换分支名。

注意,如果远程仓库需要认证,输入你的用户名和密码或使用个人访问令牌(PAT)。

9、错误处理: 如果遇到任何问题,比如分支冲突,我们可能需要先拉取远程更改并解决冲突,然后再推送。

10、后续提交: 每次想要推送新的更改时,只需要运行 git commitgit push

 如果在推送时遇到因为分支不存在的拒绝问题,可能需要先设置上游分支:

git push --set-upstream origin master

仓库初始化与配置

  • 初始化仓库

    git init

  • 克隆远程仓库

    git clone <repository-url>

  • 设置用户名

    git config user.name <name>

  • 设置用户邮箱

    git config user.email <email>

文件状态与更改

  • 查看状态

    git status

  • 添加文件到暂存区

    git add <file>

  • 添加所有文件到暂存区

    git add .

  • 删除文件

    git rm <file>

  • 修改文件

    git mv <old-file> <new-file>

提交更改

git commit -m "commit message"

  • 提交所有暂存区文件

    git commit -a

  • 修改最后一次提交

    git commit --amend

分支管理

  • 查看分支

    git branch

  • 创建新分支

    git branch <branch-name>

  • 切换分支

    git checkout <branch-name>

  • 创建并切换分支

    git checkout -b <branch-name>

  • 删除分支

    git branch -d <branch-name>

  • 合并分支

    git merge <branch-name>

远程仓库管理

  • 添加远程仓库

    git remote add <remote-name> <url>

  • 查看远程仓库

    git remote -v

  • 拉取远程仓库更改

    git fetch

  • 拉取并合并远程仓库更改

    git pull

  • 推送到远程仓库

    git push <remote-name> <branch-name>

  • 强制推送到远程仓库

    git push <remote-name> <branch-name> --force

查看历史与日志

  • 查看提交历史

    git log

  • 查看图形化的提交历史

    git log --oneline --graph --decorate --all

  • 查看单个文件的变更历史

    git log <file>

撤销与重置

  • 撤销工作目录中的更改

    git checkout -- <file>

  • 重置暂存区

    git reset

  • 重置工作目录和暂存区

    git reset --hard

  • 撤销到某个历史提交

    git reset --hard <commit-hash>

标签管理

  • 查看标签

    git tag

  • 创建标签

    git tag <tag-name>

  • 删除标签

    git tag -d <tag-name>

  • 推送标签到远程仓库

    git push <remote-name> <tag-name>

其他常用命令

  • 查看差异

    git diff

  • 查看两个文件的差异

    git diff <file1> <file2>

  • 查看两个提交之间的差异

    git diff <commit1> <commit2>

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

React类组件生命周期与this关键字

类组件生命周期 参考链接 一图胜千言&#xff08;不常用的生命周期函数已隐藏&#xff09; 代码&#xff1a; //CC1.js import { Component } from "react";export default class CC1 extends Component {constructor(props) {super(props);console.log("con…

人工智能算法工程师(高级)课程8-图像分割项目之Mask-RCNN模型的介绍与代码详解

大家好,我是微学AI,今天给大家介绍一下人工智能算法工程师(高级)课程8-图像分割项目之Mask-RCNN模型的介绍与代码详解。Mask R-CNN模型是一种广泛应用于目标检测和实例分割的任务的深度学习框架。本文将详细介绍Mask R-CNN的原理,包括Box Regression、Classification和Mask …

追问试面试系列:开篇

我们不管做任何事情&#xff0c;都是需要个理由&#xff0c;而不是盲目去做。 为什么写这个专栏&#xff1f; 就像我们被面试八股文时&#xff0c;市面上有很多面试八股文&#xff0c;随便一个八股文都是500&#xff0c;甚至1000面试题。诸多面试题&#xff0c;难道我们需要一…

Node Js开发环境的搭建

前言 通过自动化繁琐的设置和配置工作&#xff0c;帮助开发者快速启动新项目。常见的Node脚手架工具包括Yeoman、Express Generator、Create React App等。 一、什么是脚手架 1、什么是脚手架&#xff1f; 脚手架在软件开发中指的是一种自动化工具或脚本&#xff0c;用于快速创…

谷粒商城实战笔记-72-商品服务-API-属性分组-获取分类属性分组

文章目录 一&#xff0c;后端接口开发Controller层修改接口接口测试 二&#xff0c;前端开发 这一节的内容是开发获取分类属性分组的接口。 一&#xff0c;后端接口开发 Controller层修改接口 修改AttrGroupController接口。 RequestMapping("/list/{catelogId}")p…

【算法/训练】:动态规划(线性DP)

一、路径类 1. 字母收集 思路&#xff1a; 1、预处理 对输入的字符矩阵我们按照要求将其转换为数字分数&#xff0c;由于只能往下和往右走&#xff0c;因此走到&#xff08;i&#xff0c;j&#xff09;的位置要就是从&#xff08;i - 1&#xff0c; j&#xff09;往下走&#…

【Go系列】Go的UI框架Fyne

前言 总有人说Go语言是一门后端编程语言。 Go虽然能够很好地处理后端开发&#xff0c;但是者不代表它没有UI库&#xff0c;不能做GUI&#xff0c;我们一起来看看Go怎么来画UI吧。 正文 Go语言由于其简洁的语法、高效的性能和跨平台的编译能力&#xff0c;非常适合用于开发GUI…

鸿蒙应用框架开发【dlopen加载so库并获取Rawfile资源】 NDK

dlopen加载so库并获取Rawfile资源 介绍 本示例中主要介绍在TaskPool子线程中使用dlopen加载so库&#xff0c;以及如何使用Native Rawfile接口操作Rawfile目录和文件。功能包括文件列表遍历、文件打开、搜索、读取和关闭Rawfile。 效果预览 使用说明 应用界面中展示了Rawfil…

2024最新Uniapp的H5网页版添加谷歌授权验证

现在教程不少&#xff0c;但是自从谷歌升级验证之后&#xff0c;以前的老教程就失效了&#xff0c;现在写一个新教程以备不时之需。 由于众所周知的特殊原因&#xff0c;开发的时候一定注意网络环境&#xff0c;如果没有梯子是无法进行开发的哦~ clientID的申请方式我就不再进…

昇思MindSpore 应用学习-DCGAN生成漫画头像-CSDN

日期 心得 昇思MindSpore 应用学习-DCGAN生成漫画头像&#xff08;AI代码学习&#xff09; DCGAN生成漫画头像 在下面的教程中&#xff0c;我们将通过示例代码说明DCGAN网络如何设置网络、优化器、如何计算损失函数以及如何初始化模型权重。在本教程中&#xff0c;使用的动…

数据结构:二叉树(堆)的顺序存储

文章目录 1. 树1.1 树的概念和结构1.2 树的相关术语 2. 二叉树2.1 二叉树的概念和结构2.2 二叉树的特点2.3 特殊的二叉树2.3.1 满二叉树2.3.2 完全二叉树 2.4 二叉树的性质 3. 实现顺序结构二叉树3.1 堆的概念和结构3.2 初始化3.3 销毁3.4 插入数据3.5 向上调整算法3.6 删除数据…

如何查找下载安装安卓APK历史版本?

在安卓设备上&#xff0c;有时候我们可能希望安装某个软件的旧版本&#xff0c;可能是因为新版本不兼容、功能改变不符合需求或是其他原因。 安卓系统并不像iOS那样提供直观的历史版本下载界面。 不过&#xff0c;通过一些第三方市场和网站&#xff0c;我们仍然可以找到并安装…

【LLM】-08-搭建问答系统-语言模型,提问范式与 Token

目录 1、语言模型 1.1、训练过程&#xff1a; 1..2、大型语言模型分类&#xff1a; 1.3、指令微调模型训练过程&#xff1a; 2、Tokens 3、Helper function辅助函数 (提问范式) 4、计算token数量 1、语言模型 大语言模型&#xff08;LLM&#xff09;是通过预测下一个词…

【python】sklearn基础教程及示例

【python】sklearn基础教程及示例 Scikit-learn&#xff08;简称sklearn&#xff09;是一个非常流行的Python机器学习库&#xff0c;提供了许多常用的机器学习算法和工具。以下是一个基础教程的概述&#xff1a; 1. 安装scikit-learn 首先&#xff0c;确保你已经安装了Python和…

搜索引擎项目(四)

SearchEngine 王宇璇/submit - 码云 - 开源中国 (gitee.com) 基于Servlet完成前后端交互 WebServlet("/searcher") public class DocSearcherServlet extends HttpServlet {private static DocSearcher docSearcher new DocSearcher();private ObjectMapper obje…

Kettle下载安装

环境说明 虚拟机&#xff1a;Win7&#xff1b;MySql8.0 主机&#xff1a;Win11&#xff1b;JDK1.8&#xff1b;Kettle 9.4&#xff08;Pentaho Data Integration 9.4&#xff09;&#xff08;下载方式见文末&#xff09; 安装说明 【1】解压后运行Spoon.bat 【2】将jar包 复…

【Linux C | 网络编程】进程池退出的实现详解(五)

上一篇中讲解了在进程池文件传输的过程如何实现零拷贝&#xff0c;具体的方法包括使用mmap&#xff0c;sendfile&#xff0c;splice等等。 【Linux C | 网络编程】进程池零拷贝传输的实现详解&#xff08;四&#xff09; 这篇内容主要讲解进程池如何退出。 1.进程池的简单退…

聊聊基于Alink库的主成分分析(PCA)

概述 主成分分析&#xff08;Principal Component Analysis&#xff0c;PCA&#xff09;是一种常用的数据降维和特征提取技术&#xff0c;用于将高维数据转换为低维的特征空间。其目标是通过线性变换将原始特征转化为一组新的互相无关的变量&#xff0c;这些新变量称为主成分&…

7月24日JavaSE学习笔记

序列化版本控制 序列化&#xff1a;将内存对象转换成序列&#xff08;流&#xff09;的过程 反序列化&#xff1a;将对象序列读入程序&#xff0c;转换成对象的方式&#xff1b;反序列化的对象是一个新的对象。 serialVersionUID 是一个类的序列化版本号 private static fin…