【笔记】好用的GIT

一般使用流程

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

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   将代码强制发布
posted @ 2023-03-22 16:34  H·c  阅读(21)  评论(0编辑  收藏  举报