关于github使用总结

文章目录

一、本地使用git

(一)创建一个新的本地Git库

首先在本地创建一个新的git仓库

复制代码
git init
  • 注:这个命令会在当前目录下创建一个隐藏的.git文件夹,这个文件夹就是 Git 用来存储版本控制信息的地方

然后进行一次初始提交

创建一个初始文件 readme.md,将其添加到暂存区

复制代码
touch readme.md
git add readme.md

然后执行下述命令进行一次初始提交

复制代码
git commit -m "Initial commit"
  • 注:双引号中的内容是提交信息,用于简要描述本次提交的内容、目的或相关说明

此时就会在本地仓库中创建一个初始版本记录,表明项目的初始状态已被保存下来

提交过后就可以查看提交记录

复制代码
git log

(二)在本地仓库进行版本恢复

先执行 git log 查看项目提交历史

使用 git checkout 恢复版本

执行下述命令恢复到特定的版本

复制代码
git checkout a1b2c3d4e5f6g7h8

工作目录就会被更新为该提交时的状态,包括文件内容、文件结构等

恢复分支到它的上一个已知的好的状态,使用 git checkout 分支名

复制代码
git checkout master

会将工作目录和索引更新为master分支的最新状态。

二、常用命令

1. 查看当前分支

复制代码
git branch

打开终端,输入 git branch 命令。这会列出所有的分支,当前所在的分支前面会有一个星号(*)标记。

复制代码
git status

输出会包含一行显示当前分支的信息

2. 切换分支

复制代码
git checkout <分支名>

3. git暂存缓冲区

复制代码
将当前的修改存入缓冲区
git stash

从缓冲区中取出
git stash pop

三、使用过程中的问题总结

1. 在git仓库中再次对其中一个子文件夹执行了git init

这会形成一种嵌套仓库的情况

如果内部文件夹只是被错误地执行了git init,还没有进行实质性的版本控制操作(如没有添加文件、没有提交等),可以直接删除内部文件夹中的.git文件夹

2. 撤回上次推送到服务器的提交

(1)git revert

复制代码
git revert <commit-id>
	<commit-id> 为你想要撤销的提交的哈希值。

创建一个新的提交,这个提交是对之前提交的撤销。

操作流程:

复制代码
git log
git revert <commit-id>
git push origin <branch-name>
(2) git reset

这种方法会修改提交历史

操作流程:

复制代码
查看提交记录
git log

撤销提交,但保留工作目录和暂存区的更改。
git reset --soft <commit-id>
	<commit-id> 为你想要回退到的提交的哈希值。
	
撤销提交和暂存区的状态,保留工作目录的更改(默认选项)
git reset --mixed <commit-id>

完全撤销提交,包括工作目录、暂存区和历史记录的更改
git reset --hard <commit-id>

将本地的更改强制推送到远程分支
git push -f origin <branch-name>
	<branch-name> 为你的分支名称

3. git推送失败:本地分支与远端分支存在分歧

复制代码
	git pull --no-rebase
	合并两个分支

	git push
相关推荐
峰向AI4 小时前
Notion 太贵?这个 40K Star 的开源知识库,让你零成本搭建团队 wiki
github
逛逛GitHub5 小时前
37K Star 的 GitHub 开源项目开放 AI 网关,10 人团队免费用。
github
FuckPatience7 小时前
Git:the remote end hung up unexpectedly,Everything up-to-date
github
szephyr8 小时前
GitHub Actions 实战:给个人项目接上免费的自动部署流水线
ci/cd·github·devops·自动化部署·github actions
m4Rk_8 小时前
【论文阅读】Agent 记忆机制(67):MemPO——用记忆级信用分配训练 Agent 主动管理长程上下文
论文阅读·人工智能·学习·开源·github
parksben10 小时前
OpenSider:让浏览器驱动 Agent
开源·github·agent
ShineWinsu10 小时前
对于Git:远程操作的超详细保姆级解析
linux·git·gitee·github·远程仓库·分布式版本控制系统·远程操作
Gu0Qiang11 小时前
从 0 到 1 打造 AI 提示流编排器:条件分支路由、Kahn 图剪枝与 HTTP 节点实战(开源系列 06)
人工智能·github
ShawnLiaoking11 小时前
ADS305 Big data Lecture 2
github
AlfredZhao13 小时前
Git 提交代码:从报错到 SSH 免密推送
github