首页 > 其他分享 >【笔记】好用的GIT

【笔记】好用的GIT

时间:2023-03-22 16:48:16浏览次数:31  
标签:git 本地 代码 笔记 GIT master 提交 好用 分支

一般使用流程

你可以提出更改(把它们添加到暂存区),使用如下命令:

git add <filename>
git add *

这是 git 基本工作流程的第一步;使用如下命令以实际提交改动:
git commit -m "代码提交信息"

将改动推送到分支
git push origin mian

使用分支

创建一个叫做"fenzhi"的分支,并切换过去:
git checkout -b fenzhi

切换回主分支:
git checkout master

再把新建的分支删掉:
git branch -d fenzhi

除非你将分支推送到远端仓库,不然该分支就是 不为他人所见的:
git push origin <branch>

更新与合并

要更新你的本地仓库至最新改动,执行:
git pull

以在你的工作目录中 获取(fetch) 并 合并(merge) 远端的改动。
要合并其他分支到你的当前分支(例如 master),执行:
git merge <branch>

在这两种情况下,git 都会尝试去自动合并改动。遗憾的是,这可能并非每次都成功,并可能出现冲突(conflicts)。
这时候就需要你修改这些文件来手动合并这些冲突(conflicts)。改完之后,你需要执行如下命令以将它们标记为合并成功:
git add <filename>

在合并改动之前,你可以使用如下命令预览差异:

git diff <source_branch> <target_branch>
             源文件         目标文件

正规流程

git status(查看本地分支文件信息,确保更新时不产生冲突)

git checkout – [file name] (若文件有修改,可以还原到最初状态; 若文件需要更新到服务器上,应该先merge到服务器,再更新到本地

git branch(查看当前分支情况)

git checkout remote branch (若分支为本地分支,则需切换到服务器的远程分支)

git pull    若命令执行成功,则更新代码成功!

快速pull

上面是比较安全的做法,如果你可以确定什么都没有改过只是更新本地代码

git pull (一句命令搞定)
git branch 看看分支
git chechout aaa 切换分支
git branck aaa 创建aaa分支
git chechout -b aaa 本地创建 aaa分支,同时切换到 aaa分支。只有提交的时候才会在服务端上创建一个分支
git reset --hard e377f60e28c8b84158 ## 回退到指定版本,不保留原更改代码
git revert e377f60e28c8b84158 ## 回退到指定版本,保留原更改代码,且生成新的提交

revert 是放弃指定提交的修改,但是会生成一次新的提交,需要填写提交注释,以前的历史记录都在;
reset 是指将HEAD指针指到指定提交,历史记录中不会出现放弃的提交记录。

需要强制推上去(谨慎使用!)

git push -f origin master

解决办法

git warning: LF will be replaced by CRLF in 解决办法
git config --global core.autocrlf false

解决步骤:

git status 查看当前分支状态
git log 查看提交历史
git reset ***    根据提交历史ID回滚代码至上一次提交(参考上文)
git stash 将回滚后的代码,暂存到本地仓库
git checkout master      将当前分支切换至master主分支
git pull 将master的代码拉至本地,保持当前代码是正式环境运行代码
git branch -d ***(原本提交代码的分支名) 删除本地原分支
git checkout -b ***    新建一个新的分支且切到分支上
git stash pop   将暂存至本地仓库的代码取出来
git push --force   将代码强制发布

标签:git,本地,代码,笔记,GIT,master,提交,好用,分支
From: https://www.cnblogs.com/huidou/p/17244579.html

相关文章

  • 【笔记】PCA——主成分分析:推导与问题
    PCA:主成分分析主要思想假设有m个n维数据,我希望只保留k维,尽可能减少信息损失,也就是(m,n)到(m,k)的过程比如一个实际应用场景,我有一堆wlatentcode,也就是(n,512)的数据......
  • webrtc QOS笔记三 RTT计算,SRS增加XR
    webrtcQOS笔记三RTT计算,SRS增加XRRTT计算方式WebRTC中目前有两种方式计算RTT:基于媒体流发送端的计算(默认开启)。通过SenderReport(SR)与ReceiverReport(RR)携带的信息......
  • 使用Github和Bitbucket托管项目 Git的全局配置和单个项目的配置
    Git是Linus.Torvald为了管理Linux内核发起并开发的一个开源分布式版本控件系统(DVCS)。从2002年起,Linux内核一直使用BitKeeper来进行版本管理,但是在2005年BitKeeper和Linux......
  • GitHub项目Storm-HBase介绍
    ​​Storm-HBase​​​,该项目是​​TwitterStorm​​​和​​ApacheHBase​​​的结合,它使用HBasecluster作为Storm的Spout数据源,目前只是初步实现,后续会进一步完善。​......
  • Git错误non-fast-forward后的冲突解决
    当要push代码到git时,出现提示:error:failedtopushsomerefsto...Dealingwith“non-fast-forward”errorsFromtimetotimeyoumayencounterthiserrorwhilepus......
  • Cadence入门笔记(六):布局和板框
    说明布局和走线是最复杂的一个环节,涉及诸多技巧和设计理念。但为了入门学习简单考虑,这里只做基本的操作步骤说明。隐藏飞线上一节放置好元件后就要开始布局了,布局前可以......
  • 面试笔记——计算机网络
    原文链接:javaguide常见面试题OSI和TCP/IP网络分层模型OSI七层模型OSI七层模型是国际标准化组织提出一个网络分层模型,其大体结构以及每一层提供的功能如下图所示:......
  • Cadence入门笔记(五):网表生成和导入
    检查封装在生成网表前要先确认器件封装和实际封装文件是否对应存在如下是之前设计好的封装文件.psm文件打开orcad,和元件属性中的封装内容对比确认一致如果实际封装和......
  • C++中&和&&的相关笔记
    目录1.引言2.&的作用2.1位运算2.2取地址2.3引用3.&&的用途3.1逻辑运算符AND3.2右值引用3.2.1背景知识3.2.2左值和右值3.2.3移动构造函数和移动赋值函数1.引言......
  • DevOps实战笔记-DevOps平台设计和开发
    DevOps实战笔记-DevOps平台设计和开发1简介1.1DevOps概述最初是瀑布模型,后来是敏捷开发,现在是DevOps,这是现代开发人员构建出色的产品的技术路线。DevOps早在20......