Git和Gitlab在使用过程中所遇到的问题
01-关于gitLab添加ssh key后,git clone还提示输入密码问题
本地用户连接远程仓库需要用 HTTP方式连接,SSH方式会出现提示输入密码 git clone http://.......
02-生成ssh公钥和私钥对
# 命令 ssh-keygen -t rsa -C '邮箱' cat ~/.ssh/id_rsa.pub 参考文档:https://www.cnblogs.com/hafiz/p/8146324.html
03-配置git本地仓库的账号邮箱
git config --global user.name 'xxx' git config --global user.email 'xxx@163.com'
04-查看当前远程服务器地址
git remote -v
05-git实际案例分析
https://www.cnblogs.com/smuxiaolei/p/7484678.html
06-Git新建分支出现fatal: Not a valid object name: 'master'错误
原因是没有提交一个对象,要先commit之后才会真正建立master分支,此时才可以建立其它分支。
07-如何去解决fatal: refusing to merge unrelated histories

08-Branch 'dev' set up to track remote branch 'dev' from 'origin'.
原因是没有指定本地dev分支与远程dev分支的链接。 # 解决方法: git branch --set-upstream dev origin/dev

09-git报错:Pull is not possible because you have unmerged files解决

本地的push和merge会形成MERGE-HEAD(FETCH-HEAD), HEAD(PUSH-HEAD)这样的引用。HEAD代表本地最近成功push后形成的引用。MERGE-HEAD表示成功pull后形成的引用。可以通过MERGE-HEAD或者HEAD来实现类型与svn revet的效果。
# 解决方法: 1.将本地的冲突文件冲掉,不仅需要reset到MERGE-HEAD或者HEAD,还需要–hard。没有后面的hard,不会冲掉本地工作区。只会冲掉stage区。 # 执行命令
git reset –hard FETCH_HEAD 2.再进行 git pull 就会成功。
10-合并dev分支的代码流程
# 切换到 master 分支
git checkout master # 合并dev分支代码
git merge dev 如果出现:warning: Cannot merge binary files: apps/restful_api/__pycache__/parts_view.cpython-37.pyc (HEAD vs. dev) # 就执行下面的
git add .
git commit -m ''
git push origin master 如果没有遇到二进制文件冲突,就直接执行 git push
git push origin master

11-git 出现 |MERGING的解决方法

# 回滚到提交之前的状态 git reset --hard HARD
12-Git-命令行-拯救“Your local changes to the following files would be overwritten by checkout”

情况一:未跟踪文件的内容改动很重要,保存修改
方式一:放到暂存区
# 先查看状态
git status #
git add . # 放到暂存区
git stash # 取出的时候使用
git stash pop 方式二: 发起一个commit 存到提交历史
git add.
git commit -m "commit message" 情况二:未跟踪文件的内容改动不重要,放弃修改
有两种办法,清除修改和强制切换分支
推荐做法:清除未跟踪文件
git clean n //这个是清除文件预览
git clean -f //强制清除文件 强制切换分支
强制切换分支命令如下,结果同提示说的那样,会直接覆盖未跟踪的文件。这个方式我觉得很是粗暴,我们日常切换的时候,还是不要使用 -f 强制切换,没有覆盖提示,很容易发生文件修改丢失,但是我们自己不知道。 git checkout -f dev
13- 报错

14-git提交时候报错:The file will have its original line endings in your working directory.
错误描述
在使用git提交的时候出现The file will have its original line endings in your working directory.错误,后来发现 自己再提交的时候忘记输入git add 上传的文件 出现了上面的错误,需要下面进行修改: 1. git rm -r -f --cached ./ (删除缓存) 2. git config --global core.autocrlf false
原因是路径中存在 / 的符号转义问题,false就是不转换符号默认是true,相当于把路径的 / 符号进行转义,这样添加的时候就有问题 3. git add . (添加该目录下所有文件) 4. git push -u origin master (这时候提交就没问题了) 初次提交的命令
git init
git add README.md
git commit -m "first commit"
git remote add origin git@github.com:xxxx.git
git push -u origin master
15-git pull报错:error: Your local changes to the following files would be overwritten by merge:.idea/workspace.xml
方法1:
git stash
git pull origin master
git stash pop
然后可以使用git diff -w +文件名 来确认代码自动合并的情况. 方法2:既然不想保留本地的修改,那好办。直接将本地的状态恢复到上一个commit id 。然后用远程的代码直接覆盖本地就好了。
git reset --hard
git pull origin master
Git和Gitlab在使用过程中所遇到的问题的更多相关文章
- [Git]07 如何在提交过程中忽略某些文件
一般我们总会有些文件无需纳入 Git 的管理,也不希望它们总出现在未跟踪文件列表.通常都是些自动生成的文件,比如日志文件,或者编译过程中创建的临时文件等.我们可以创建一个名为 .gitignor ...
- 关于在git添加远程地址的过程中遇到的问题
问题产生的过程 我根据菜鸟教程的步骤,做了如下操作: 1.打开安装文件夹中的git-bash程序 2.设置username和email 3.添加远程地址 结果如下: 之后通过百度知道要先git ini ...
- Maven编译过程中出现的问题
在用Jenkins编译Gitlab上代码过程中,实际使用的是Maven服务器上的打包命令,以下为打包过程中出现的问题及解决方案 问题一:Maven无法编译Snapshot版本代码 答:登录至maven ...
- 开发与测试整体过程中的Git分支merge流程
开发与测试整体过程中的Git分支merge流程 Git分支merge之开发流程 首先在Gitlab上有个仓库存储着原始的项目代码,其中包含一个叫master的分支.然后可能按功能进行分配,由不同的开发 ...
- gitlab使用过程中的需求与解决
序言 在git使用过程中发现指令实在太多,就算记忆后不长用的话很快也会忘记掉,所以编写本文的初衷是为了记录在使用git指令的过程中所遇到的需求与解决方法,毕竟使用git的需求也就那么一些,范围不大,所 ...
- Git使用过程中出现项目文件无法签入Source Control的情况
在VS中使用Git进行项目source control的过程中,有些文件不在source control之下,右键点击时,也找不到Undo, Commit命令 无法把他们签入进Source Contr ...
- git submodule 使用过程中遇到的问题
git submodule 使用过程中遇到的问题 资源文件 原.gitmodules文件的内容如下: [submodule "Submodules/FFmpegWrapper"] ...
- git rebase 过程中遇到冲突该怎么解决?
在执行git rebase 过程中经常遇到问题,此时有点慌,一般如何解决呢? 1.先将本地的冲突手动解决 2.执行下面命令 git add . git rebase --contine //继续re ...
- git提交过程中遇到的 index.lock 问题导致无法提交的解决方法
在提交代码的过程中,可能会遇到下面的问题: fatal: Unable to create 'C:/programLists/zzw-q1/.git/index.lock': File exists. ...
随机推荐
- 【MongoDB】MongoDB环境配置
软件下载与安装 1.mongDB下载,可到官网下载,我用的是3.4.6版本.可以放到任意目录下,我的MongDB安装目录为 D:\software\small_softeware\MongoDB 2. ...
- Redis in python
什么是Redis 数据库类型分为两种,关系型和非关系型,Redis是一个非常重要的非关系型数据库. 既然是数据库,就是存储数据的一个空间,或者说是一个软件,非关系就是不再按照一对一多对多等结构进行外键 ...
- .Net语言 APP开发平台——Smobiler学习日志:在应用中添加WeiXin组件
最前面的话:Smobiler是一个在VS环境中使用.Net语言来开发APP的开发平台,也许比Xamarin更方便 控件说明 WeiXin组件. 效果演示 1. 分享好友 2. 分享朋友圈 图1 图2 ...
- MySQL 笔记整理(2) --日志系统,一条SQL查询语句如何执行
笔记记录自林晓斌(丁奇)老师的<MySQL实战45讲> 2) --日志系统,一条SQL查询语句如何执行 MySQL可以恢复到半个月内任意一秒的状态,它的实现和日志系统有关.上一篇中记录了一 ...
- java开发环境配置——JDK
虽然网上有很多类似的文章了,第一次搭的时候也是看的网上的文章,但为了做个记录,自己也写一下,记录一下. 首先是先安装JDK,JDK下载可以直接去官网下载,地址:http://www.oracle.co ...
- Object.keys 及表单清空
Object.keys 返回一个所有元素为字符串的数组,其元素来自于从给定的object上面可直接枚举的属性.这些属性的顺序与手动遍历该对象属性时的一致. // simple array var ar ...
- whistle
whistle介绍 whistle是基于Node的跨平台web调试代理工具, 主要查看, 修改HTTP, HTTPS, Websocket的请求,响应, 也可以作为HTTP代理服务器使用 (文档)[h ...
- 以太坊智能合约 Solidity 的常用数据类型介绍
目录 目录 1.数组 1.1.对数组的增删改查操作. 2.String.Bytes.Mapping的使用 3.Enums 和 Structs 的简单应用 4.Ether 单位和 Time 单位 5.A ...
- Mysql增量写入Hdfs(二) --Storm+hdfs的流式处理
一. 概述 上一篇我们介绍了如何将数据从mysql抛到kafka,这次我们就专注于利用storm将数据写入到hdfs的过程,由于storm写入hdfs的可定制东西有些多,我们先不从kafka读取,而先 ...
- Linux中DHCP服务器的简单配置
我安装了两台linux系统,一个作为服务器,一个客户端 两个都有3个网卡, 后两个网卡聚合为zhi一个网卡:Linux 网卡聚合 两台电脑都一样. 那么如何为这个聚合网卡进行DHCP的分配呢? 1.由 ...