首页 > 其他分享 >git提交

git提交

时间:2023-08-01 15:13:08浏览次数:39  
标签:origin pull git 提交 仓库 本地 远程

1. 第一种方式-本地新建

新建一个文件夹用来存放项目文件,如project_1

1.新建本地仓库,新建完成后会生成一个.git文件

git init

2.新建分支,如test1

git checkout -b test 

3.暂存,添加文件提交到暂存区

git add .

4.提交,将代码提交到本地仓库

git commit -m 备注信息

 5.连接远程仓库

git remote add origin 仓库地址 

 6.提交到远程仓库。test1为新建的分支名称

git push --set-upstream origin test1

报错分析:

git config --global http.sslVerify false

补充:

git push只可以使用--set-upstream,等价与使用 -u

用法:git push -u origin mybranch1

作用:

1.推送本地分支mybranch1到远程主机origin的mybranch1分支

2.追踪远程分支,远程没有mybranch1就自动创建一个

3.设置origin为默认主机

 

 github查看提交的代码

 

 

在第6步,若要新建和远程仓库相同的分支,如main,在提交git push的时候会报错,因为需要先拉取在合并,就是将远程仓库里的最新代码拉到本地来,再将本地的推过去

 

 查找资料:

(1)先把git的东西fetch到你本地然后merge后再push,master为远程仓库主分支,现在为main

$ git fetch origin master

$ git merge origin FETCH_HEAD

先抓取远程仓库的更新到本地,然后与你的本地仓库合并,(如果有冲突就要解决冲突后再合并,冲突问题比较复杂,这里就不详细说了),这样就可以使远程仓库和你本地仓库一致了,然后就可以提交修改了。

(2)这2句命令等价于

$ git pull origin master

但是使用git fetch + git merge 更加安全。

(3)git pull --rebase origin master

重定基,可以是历史更加统一,即使提交历史趋向于一条直线。

补充:他们之间的关系

git pull = git fetch + git merge FETCH_HEAD

git pull --rebase =  git fetch + git rebase FETCH_HEAD

具体解决如下:

git pull origin main --allow-unrelated-histories

直接用git pull origin main会报错,

 原因分析:

可能是这两个仓库内容是完全不一样的,他们之间没有关联。因为我本地仓库存放A,远程存放B,我想把B拉过来,本地存放A+B,但是执行pull命令是要完全覆盖本地,本地直接变成B了,这样就产生了冲突。

而平时的情况是本地存A,在远程修改后变成A+1,想要让本地也同步远程更新,就执行pull命令,用远程的A+1覆盖了本地的A。

解决方案:git pull origin main --allow-unrelated-histories

在git pull 命令后,加上--allow-unrelated-histories ,这样就让两个没关联的内容同时存在了,本地就成功的存放了A+B。

注意,这时候想要将合并成功的本地仓库推入远程仓库,因为本地仓库更新了,所以要先提交,然后再执行push命令

2. 第二种方式--克隆

git clone https://github.com/xuweiqi1461/test.git

其他步骤与第一种方式相同

 

标签:origin,pull,git,提交,仓库,本地,远程
From: https://www.cnblogs.com/xuweiqibky/p/17596564.html

相关文章

  • git学习笔记(十二):标签管理
    打标签,方便找。tag就是一个让人容易记住的有意义的名字,跟某个commit捆绑在一起。(就是一个指向commit的指针,原来的哈希表值太复杂了,不方便沟通,所以给了一种定制的简化版。)打标签切换到需要打标签的分支上,然后使用命令$gittagv1.0可以使用gittag查看所有标签。默认的标......
  • Git基础命令
    Git配置1.查看当前的git配置信息gitconfig--list4.查看git用户名或邮箱gitconfig--globaluser.name#查询git所使⽤的用户名gitconfig--globaluser.email#查询git所使⽤的email#注:--global表示全局,没有--global表示只查询......
  • linux sbatch 提交jupyter
    点击查看代码#!/bin/bash#SBATCH-pBatch2#SBATCH-N1#SBATCH-n1#SBATCH-c1#SBATCH--job-name=jupyter#SBATCH--output=jupy.out#SBATCH--error=jupy.err#SBATCH--parsableport=8003ip=`ifconfig|grep-m1inet|awk'{print$2}'`jup......
  • git学习笔记(十二):多人协作
    从远程仓库克隆时,git自动把本地的master分支和远程的master分支对应起来了,可以使用gitremote命令查看远程库的信息。gitremote-v显示信息更加详细。推送分支推送分支就是把该分支上的所有本地提交推送到远程库。推送时,要指定本地分支。这样,git就会把该分支推送到远程库对应......
  • git 通过husky提交代码报错导致代码丢失(只add了未commit的代码)
    项目中使用了eslint,以及lint-staged,在执行gitcommit时会触发git的pre-commit钩子,对代码做一次检查及格式化。由于个别文件中有TS报错,导致commit失败,并抛出了具体文件路径,当我在命令行点击路径时发现新增得文件没了(.ts、.vue、图片),仔细一看引用过这些文件得代码也没了,比如路......
  • git help
    See'githelp<command>'toreadaboutaspecificsubcommandMainPorcelainCommandsaddAddfilecontentstotheindexamApplyaseriesofpatchesfromamailboxarchiveCrea......
  • 我的 Git 初始化配置
    安装完Git之后,我们需要做一些基础配置,以便后续开心地开发。以下是我会设置的一些基础配置,仅供大家参考。用户信息要做的第一件事就是设置你的用户名和邮件地址。这一点很重要,因为每一个Git提交都会使用这些信息,它们会写入到你的每一次提交中,不可更改:$gitconfig--global......
  • git学习笔记(十一):Feature分支
    新旧更迭,不辞旧来迎新。每添加一个新功能,最好新建一个feature分支在上边开发,完成后合并,最后删除这一分支。所以正常操作就是新建分支,进入新分支,编写代码,提交代码,切回主分支,准备合并。如果忽然这个功能不需要了,要如何销毁这一分支呢?直接使用gitbranch-dfeaturea(featurea......
  • 设置git可以同时推送gitee和github
    查看当前的远程仓库设置:gitremote-v这会列出你当前配置的远程仓库。你可能会看到类似以下的输出:origin-gitee<gitee仓库地址>(fetch)origin-gitee<gitee仓库地址>(push)新增一个远程仓库 gitremoteaddorigin-github<github仓库地址> 分别推送到不同的仓库git......
  • git 版本穿梭
    shj@MSIMINGW64/d/code_lib/git-demo$gitinitInitializedemptyGitrepositoryinD:/code_lib/git-demo/.git/shj@MSIMINGW64/d/code_lib/git-demo(master)$ll-atotal5drwxr-xr-x1shj1971210Jul3117:04./drwxr-xr-x1shj1971210Jul3117......