git命令行操作

git remote update origin --prune 更新本地的git分支保持和远程分支一致

git clone -b develop XXX 拉取某个分支的代码



1、创建一个空文件夹,在其中打开Git Bash Here,输入:

git clone + 刚刚复制的粘贴过来,回车

2、打开你拉下来的文件:cd + 文件名。

3、再把你需要上传的文件粘贴到你刚刚新建的文件夹中,然后再输入:

git add .(注意:最后的点"."和前面的字母之间有一个空格)

表示把所有发生变化的文件上传到暂存区,"."表示所有

4、再输入命令:

git commit -m '本次提交的注释'(注:引号内容可不写省略)

Git异常The remote end hung up unexpectedly解决方案

解决方案

复制代码
        公司网络慢因此设置git配置参数,否则因此超时退出

$ git config --global http.lowSpeedLimit 0

$ git config --global http.lowSpeedTime 999999

$ git config --global http.postBuffer 5242880

5、最后把所有的全部push上去,输入命令:

git push 或者 git push -f(强制交)

出现master|rebase是本地代码与仓库代码产生了冲突,解决完冲突后使用

git add .

git rebase --continue

git push

git push不行可以强制git push -f

=======================================================================

git rebase --abort 会放弃合并,回到rebase操作之前的状态,之前的提交的不会丢弃;

git rebase --skip 则会将引起冲突的commits丢弃掉(慎用!!);

git rebase --continue 合并冲突,结合"git add 文件"命令一起用与修复冲突,提示开发者,一步一步地有没有解决冲突。(fix conflicts and then run "git rebase --continue")

这里使用git rebase --skip代码被删可以使用git rebase --abort 可以解决代码回退的问题

===================================================================

首次提交过程(自己先写了一些东西,然后拉项目(之前未拉过项目)进行合并)

git init

git remote add 仓库别名(例如origin) 仓库https链接

git remote

git remote -v

git add .

git commit -m '本次提交的注释'

这里执行git pull (git pull 是git fetch 加 git merge)不行的,要指定与远程仓库的哪个分支拉下来合并:git pull 仓库别名/分支名(例如origin/master)这个,或者设置跟踪本地分支的远程上游分支也就是指定与远程仓库的哪个分支拉下来合并,执行, git branch --set-upstream-to=仓库别名/分支名(例如origin/master)

再执行 git pull 肯定还是不行的话,执行,git pull 仓库别名 分支名 --allow-unrelated-histories ,因为git@2.9之前如果是两个没有相关历史记录的分支进行合并,执行git pull可以也就是git fetch 可以,git merge也可以,但是git@2.9之后修复这个了,git pull 不可以合并也就是git fetch 可以,git merge不可以,只有执行 git pull 仓库别名 分支名 --allow-unrelated-histories 才可以

git push 仓库别名 分支名(例如origin master) 如果设置了跟踪本地分支的远程上游分支只需要git push, 如果有冲突则需手动解决冲突再 git add . git commit -m '本次提交的注释' git push 仓库别名 分支名

======================================================

在项目的基础上更改(入职,然后拉项目后,在项目的基础上写)

git clone 项目链接

git remote

git remote -v

git add .

git commit -m '本次提交的注释'

git pull (相当于git fetch 和 git merge),在项目的基础上更改其实已经设置了跟踪本地分支的远程上游分支

git push,如果有冲突则需手动解决冲突再 git add . git commit -m '本次提交的注释' git push

=====================================================================

以后的提交过程

git remote

git remote -v

git add .

git commit -m '本次提交的注释'

git pull (相当于git fetch 和 git merge),以后的提交过程其实已经设置了跟踪本地分支的远程上游分支, 如果不行,要指定与远程仓库的哪个分支拉下来合并:git pull 仓库别名/分支名(例如origin/master)这个,或者设置跟踪本地分支的远程上游分支也就是指定与远程仓库的哪个分支拉下来合并,执行, git branch --set-upstream-to=仓库别名/分支名(例如origin/master)

如果上一步git pull就行的话,这步就不需要了, 不行的话,解决了上个问题后,再执行 git pull 还是不行的话,执行,git pull 仓库别名 分支名 --allow-unrelated-histories ,因为git@2.9之前如果是两个没有相关历史记录的分支进行合并,执行git pull可以也就是git fetch 可以,git merge也可以,但是git@2.9之后修复这个了,git pull 不可以合并也就是git fetch 可以,git merge不可以,只有执行 git pull 仓库别名 分支名 --allow-unrelated-histories 才可以

git push 仓库别名 分支名(例如origin master) 如果设置了跟踪本地分支的远程上游分支只需要git push, 如果有冲突则需手动解决冲突再 git add . git commit -m '本次提交的注释' git push 仓库别名 分支名

===============================================

历史记录

git log

git log --pretty=oneline

git log --pretty=oneline --graph

git reflog 记录所有的版本,包括回退后之后commit的版本, git log 不记录回退后之后commit的版本

版本回退

git reset --hard HEAD^ 回退到上一个版本

git reset --hard HEAD~100 回退到上100个版本

git reset --hard commitid 根据commitid 回退

git reset --hard head 回退到当前版本

【Git问题Everything up-to-date正确解决方法】

先说说出现这个问题的原因:git提交改动到缓存,要push的时候不会将本地所有的分支都push掉,所以出现这个问题。那么我们就需要新建分支提交改动然后合并分支。

1.先创建一个新的分支提交改动

$ git branch newbranch

2.检查这条命令是否创建成功

$ git branch

这时终端会输出:

newbranch
master
这样就创建成功了,前面的
代表的是当前你所在的工作分支,接下来就要切换工作分支。

3.git checkout newbranch

4.然后将你的改动提交到新的分支上

$ git add 网页换肤

$ git commit -m"skin"

此时可以 git status 检查下提交情况。如果提交成功,我们接下来就要回主分支了, git checkout master

5.我们将新分支提交的改动合并到主分支上

$ git merge newbranch

合并分支可能产生冲突这是正常的,虽然我们这是新建的分支不会产生冲突,但还是在这里记录下。可以用

$ git diff 来查看产生冲突的文件,然后做对应的修改再提交一次就可以了。

6.我们的问题解决了,接下来就可以push代码了

$ git push -u origin master

7.最后,新建分支的朋友别忘了删除分支

$ git branch -D newbranch

如果想保留分支只是想删除已经合并的部分只要把大写的D改成小写的d就行了。

相关推荐
zskj_zhyl4 小时前
智慧养老丨从依赖式养老到自主式养老:如何重构晚年生活新范式
大数据·人工智能·物联网
随便取个六字4 小时前
GIT操作 学习
git·学习
哲科软件5 小时前
从“电话催维修“到“手机看进度“——售后服务系统开发如何重构客户体验
大数据·智能手机·重构
zzywxc7875 小时前
AI 正在深度重构软件开发的底层逻辑和全生命周期,从技术演进、流程重构和未来趋势三个维度进行系统性分析
java·大数据·开发语言·人工智能·spring
专注API从业者5 小时前
构建淘宝评论监控系统:API 接口开发与实时数据采集教程
大数据·前端·数据库·oracle
一瓣橙子6 小时前
缺少关键的 MapReduce 框架文件
大数据·mapreduce
永洪科技13 小时前
永洪科技荣获商业智能品牌影响力奖,全力打造”AI+决策”引擎
大数据·人工智能·科技·数据分析·数据可视化·bi
weixin_3077791314 小时前
Hive集群之间迁移的Linux Shell脚本
大数据·linux·hive·bash·迁移学习
大只鹅14 小时前
解决 Spring Boot 对 Elasticsearch 字段没有小驼峰映射的问题
spring boot·后端·elasticsearch
星源~14 小时前
tree 命令集成到 Git Bash:可视化目录结构的指南
git·单片机·物联网·嵌入式·项目开发