git 相关问题与解决方案

git 相关问题与解决方案

git分支创建

选择一个专用目录下右击打开git bash

javascript 复制代码
# 环境配置
git config --global user.name "Your Name" # 修改为你的用户名
git config --global user.email "[email protected]"  # 修改为你的邮箱

# 初始化仓库
mkdir 文件夹名
cd 文件夹名
git init

# 克隆仓库代码
git clone http://gitLab.git  # 不同仓库地址不同

# 创建分支
cd 文件夹名  # 此处文件夹名是上一步clone出来的文件夹
git checkout -b 分支名  #自己创建一个分支的名字

# 将本地库推送到远程库上
git push origin 分支名  #上一步创建的分支名

如何将本地代码提交到创建的分支

javascript 复制代码
# 将本地库推送到远程库上
git add .
git commit -a -m '修改ID' # 修改ID填写的内容可以是修改的次数、提交的修改内容等等能够区别每次提交即可
git push origin 分支名

定期拉取master内容到自己的分支

假设你正在开发一个新功能,还没开发完成。但是团队成员A最近开发了B功能,这个功能最近上线后合并到master了,此时你要拉取master最新代码到你的分支中。

javascript 复制代码
# 1. 首先要将本地修改的代码推送到自己创建的分支上
git add .
git commit -a -m 'fix' 
git push origin 分支名

# 2. 切换到master主分支上
git checkout master

# 3. 将master更新的代码拉取到本地
git pull

# 4. 再切换到自己的分支上, 假设为: myTree
git checkout myTree

# 5. 合并master到自己的分支myTree上
git merge master

# 5、提交合并后的代码
git add .
git commit -m "merge master"

# 6、提交到远程仓库
git push origin myTree

git拉取master被覆盖,如何恢复

javascript 复制代码
git reflog  # 查看提交记录,找到对应的commitId
git reset --hard 版本号   # 如git reset --hard HEAD@{n}即可回到对应的版本

git push到远程仓库出错

! [rejected] error: failed to push some refs to '.......git'

错因1:可能是因为在网页中手动修改了远程仓库中的文件,导致一些文件在本地仓库和远程仓库上不一致,故而引发该错误。

对应解决方法:使用命令 git pull --rebase origin 分支名 将远程仓库同步到本地,然后再重新add、commit、push就行了。

Please commit your changes or stash them before you switch branches

从当前分支想要切换到另一个分支,但是由于当前的修改没有提交,所以会提示【Please commit your changes or stash them before you switch branches.】

但是自己这个分支的功能还没有开发完,去commit提交的话感觉不完整。这时候如果要切换到其他分支的话就可以执行git stash。

git stash这条指令的作用就是将已经修改但未提交的代码隐藏起来,执行完之后代码回复上一次提交的状态,不会展示出已经修改的代码,然后再执行git checkout就可以进行切换了。

当又回到之前正在开发的分支时,需要执行git stash pop这条指令来还原之前隐藏的代码。

相关推荐
java搬砖工-苤-初心不变8 小时前
解决 Git 通过 SSH 克隆仓库时自动转换为 HTTPS 的问题
git·https·ssh
Naomi52119 小时前
自定义汇编语言(Custom Assembly Language) 和 Unix & Git
服务器·开发语言·git·unix
@BreCaspian21 小时前
Git 从入门到精通(开源协作特别版)
git·开源
谢尔登1 天前
【已解决】Webstorm 每次使用 git pull/push 都要输入令牌/密码登录
ide·git·webstorm
紫阡星影1 天前
TortoiseGit多账号切换配置
git·gitee·tortoisegit
予早1 天前
git kex_exchange_identification 相关问题
git
鸠摩智首席音效师1 天前
如何完整迁移 Git 仓库 ?
git
诚诚程程成1 天前
git配置github
git·github
阿杜杜不是阿木木1 天前
使用ollama部署本地大模型(没有GPU也可以),实现IDEA和VS Code的git commit自动生成
linux·git·vscode·ai·intellij-idea·ollama
HelloDam1 天前
Git简洁安装方式和使用方式【附安装包资源,Git基础操作,如拉取项目、上传代码、拉取代码】
git·github