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

使用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.lryc.cn/news/408971.html

相关文章:

  • jetbrains InterlliJ IDEA 2024.1 版本最新特性一览: Java 相关内容
  • 百日筑基第三十四天-JAVA中的强/软/弱/虚引用
  • C语言100基础拔高题(3)
  • AV1技术学习:Constrained Directional Enhancement Filter
  • C++的STL简介(一)
  • DNS劫持
  • Centos7解决网关ens33的静态地址配置
  • python中常用于构建cnn的库有哪些
  • 【前端 17】使用Axios发送异步请求
  • Unity Android接入SDK 遇到的问题
  • 基于深度学习的复杂策略学习
  • 【Golang 面试 - 进阶题】每日 3 题(一)
  • 周报 Week 3:
  • 开源消息队列比较
  • 【前端逆向】最佳JS反编译利器,原来就是chrome!
  • 微信小程序根据动态权限展示tabbar
  • 开源安全信息和事件管理(SIEM)平台OSSIM
  • 【DP】01背包
  • 50、PHP 实现选择排序
  • 17.延迟队列
  • KCache-go本地缓存,支持本地缓存过期、缓存过期自维护机制。
  • 斯坦福UE4 C++课学习补充 14:UMG-优化血量条
  • 在生信分析中大家需要特别注意的事情​
  • Java工厂模式详解:方法工厂模式与抽象工厂模式
  • springSecurity学习之springSecurity用户单设备登录
  • 微信小程序实现聊天界面,发送功能
  • 【强化学习的数学原理】课程笔记--5(值函数近似,策略梯度方法)
  • 前端Long类型精度丢失:后端处理策略
  • C++ | Leetcode C++题解之第300题最长递增子序列
  • springboo 整合 redis