⼀、在网上Gitee准备

1.1、注册登录 gitee
1.2、在gitee上创建仓库,点击gitee头像旁边的【+】,选择【新建仓库】

 

 

 

1.3、开始新建,然后点击【创建】

 

 

仓库名称:最好都用英文

这里方便讲解就不勾选后面的内容了

接着直接点击【创建】就可以了

 

 


1.4、如果没有配置git全局设置的,大家可以复制上面那两条命令进行配置哦~(如果配置好的可以跳过这一步)

2、在本地电脑上传
2.1、进入需要上传的文件夹,右击打开Git Bash窗口

输入git init

进行初始化,会在目录下创建一个.git的本地仓库

 

 

 

然后在当前目录会出现一个.git的本地仓库

 

 

如果没有显示出来的,大家可以点击上面的【查看】,下面勾选【隐藏的项目】

 

 

2.2、将指定文件添加至暂存区

提交某个文件:git add 文件全称(可以是文件夹,也可以是多个文件,空格隔开)

提交全部:git add .

 

 


2.3、将暂存区内容提交至本地仓库

git commit -m “first commit”

-m 是添加描述,“ ” 里面的是可以自行修改的

如果遇到上面这种情况就是你还没有绑定你的gitee邮箱和名字,这个在上面1.4有说明

 

 

 

 


上面这样子才是正确的显示

2.4、添加远程仓库
这里用1.4出现的码云上的测试仓库的地址

git remote add origin “远程仓库地址”

 

 

 

2.5、将本地仓库push至远程仓库

git push -u origin master

 

 

 

最后想推送到远程仓库的时候

git push -u origin master

出现下图错误

错误详情:

复制代码
! [rejected]        master -> master (fetch first)
error: failed to push some refs to
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
复制代码

解决很简单,使用强制推送

使用下面的命令

git push -f origin master 

登录gitee,远程仓库查看,成功上传

 

 


文件经历的过程:
本地磁盘–>暂存区–>本地仓库–>远程仓库

3、git 仓库管理常用命令
3.1、设置用户名密码

git config --global user.email "xxx@xxx.com" // xxx@xxx.com 换成你的邮箱地址
git config --global user.name "xxxx" // xxxx换成你的用户名

3.2、回到上一个版本

git reset --hard HEAD^ // 回到上上个版本用 git reset --hard HEAD^^

3.3、分组操作

git checkout -b dev // 创建并切换到dev分支
git checkout master // 切换到主干分支
git branch // 查看分支
git branch -a // 查看所有分支
git fetch -a // 拉取所有分支, 拉取之后使用git branch -a才能看到别人新建的远程分支
git push origin dev // 推送dev分支代码到远程仓库的dev分支
git pull origin dev:dev // 拉取远程dev分支
git merge dev -m"xxx" // 合并dev分支到主干分支(当前分支必须是master分支)
git merge master -m"xxx" // 合并master分支到dev分支(当前分支是dev分支)

原文链接:https://blog.csdn.net/zouxun660/article/details/126302190

 

 

Git常见报错:Updates were rejected because the tip of your current branch is behind

风中一匹狼v

于 2021-07-12 16:44:05 发布

31019
收藏 76
分类专栏: Git 文章标签: git
版权

华为云开发者联盟
该内容已被华为云开发者联盟社区收录,社区免费抽大奖🎉,赢华为平板、Switch等好礼!
加入社区

Git
专栏收录该内容
8 篇文章41 订阅
订阅专栏
1、报错原因
说明:
该报错在git push时出现,一句话解释就是你在本地仓库上的修改没有基于远程库最新版本,你的本地仓库版本落后于远程仓库。(这个报错告诉我们在本地开发的时候,要经常使用git pull获取远程分支最新改动,这样才能保证在最终git push的时候本地commit历史和远程commit历史是一致的)

场景一:
起初本地仓库和远程仓库是同步的,然后某一天你在远程仓库上直接做了修改,此时远程和本地就不同步了。过了几天你在本地仓库做了一些修改,修改完成后使用git push想要提交,此时就会报错。

场景二:

起初本地仓库和远程仓库是同步的,不过有多个人都在该分支上开发,另一个人在某一天做了修改并提交到远程库了。此时远程库和你的本地库就不同步了。后续同场景一。

场景三:
git commit --amend之后,本地仓库和远程仓库的log版本历史不一致了,此时想要git push,也会报这个错。
个人理解: 使用该命令后,虽然所有提交记录的内容没变化,但最后一次提交的commit id变化了。git不允许push改变提交历史的操作,可以新增或者减少commit但不能改变原来的commit历史,因此会报冲突。

2、解决方案
1、git pull

//针对场景一和二,养成先pull最新代码再修改的习惯即可
//在修改本地代码前,先使用git pull拉取远程最新代码,然后再进行修改(推荐--rebase)
git pull 远程仓库名 远程分支名 --rebase

2、git push --force

//针对场景三,在确认代码无误的情况下,直接使用--force强制推送
git push 远程仓库名 远程分支名 --force