Git 使用

终端命令

pwd 显示当前终端会话所在的目录位置 print work directory

ls 显示当前目录下的所有文件 list file

cd (..代表上一级 切换目录 change directory

Git

检查是否下载Git

终端输入 git version

若出现版本号证明已下载Git

初始化

终端输入

git config --global user.name "name"

git config --global user.email "email"

提交

终端输入git init 会在当前目录创建一个.git的隐藏文件夹 其中hook中会保存文件的每个git版本记录和变化

终端输入git add 文件名 把文件加进git版本控制系统中

若文件过多,输入git add . 将当前目录下的所有文件加到git版本控制系统中

终端输入git commit 把刚才暂时保存的变更提交固定成一个版本 此时会出现一个vim的终端编辑器,在此写提交说明 按 ai进入编辑模式 然后写说明 按Esc退出编辑模式 输入:wq (英文冒号,wq表示保存并退出) 完成编辑,退出到终端目录

补充

终端输入git commmit -"提交说明" 直接提交并附上说明

说明

git按行来比较文件的改变情况,只有两种情况: 新增、删除

终端输入git log 查看提交信息

vscode自带功能

更改代码后,点击VSCode左侧的源代码,点击更改的文件可以看到对比视图,左侧是上一侧commit的内容,右侧是更改后的内容。 点击左侧的源代码管理一栏的右侧对号按钮,然后点击 自动执行git add 和 git commit.在上侧输入"说明"按回车

补充

安装扩展Git Histort Diff 可以看到所有历史提交等

回退

终端输入git log 复制想回退到的版本commit id

终端输入git reset--hard commit id 即可回退 (hard是重置模式的一种,表示硬重置,即覆盖所有变更。 另外还有soft和mixed模式) 但是reset不仅回退了而且清空了之后的版本

branch

在不同版本切换: 在git commit时,终端输入git branch 分支名称

终端输入 git checkout 分支名称不断切换分支

终端输入 git merge可以将合并分支

终端输入 git tag创建固定版本

github

创建仓库

仓库命名设置等

创建主分支 git branch -M main

添加一个远程仓库地址 git remote add orgin xxx xxx为图片红线部分

上传到github git push -u origin main 输入用户邮箱和密码 有时因网络问题需要多push几次

如何参与开源项目

添加

public项目点进去,点击fork 即可将项目复制到自己的库里

在自己的库点开刚刚复制的项目,点击Code 复制链接

在VSCode中找到一个文件夹,在终端输入git clone 复制的链接 输入git remote -v可以看到只有自己仓库的链接 在复制一下源项目的链接 输入git remote add upstream 链接添加上游代码库

为项目添加功能

输入git checkout -b kwc创建并切换到进入kwc的分支

创建文件夹,创建json文件,说明name,url 然后 git add git commit git push 回到自己仓库,可以看到已有这个分支了

在源项目中,点击Pull Requests(pr)拉去请求 点击New pull request新建pr base为根源,compare为比较,选取自己刚刚的分支。 如果显示绿色对号,证明可以合并,填写pr信息并提交。 则源项目的管理者可以合并分支项目了

如果没有绿色对号,可能是写代码时,源项目管理者提交了新的commit使版本不一致

先更新本地版本: 输入git fetch upstream

再把远程的最新代码合并的自己的分支中 输入git merge upstream/main

再提交 输入git push 然后提交pr

参考链接

【git、github 保姆级教程入门,工作和协作必备技术,github提交pr - pull request】 www.bilibili.com/video/BV1s3...

Git 教程 | 菜鸟教程 (runoob.com)

相关推荐
Yvonne爱编码28 分钟前
HTML-3.3 表格布局(学校官网简易布局实例)
前端·html·github·html5·hbuilder
范纹杉想快点毕业5 小时前
以项目的方式学QT开发(一)——超详细讲解(120000多字详细讲解,涵盖qt大量知识)逐步更新!
c语言·数据结构·c++·git·qt·链表·github
qq_653644466 小时前
如何查看打开的 git bash 窗口是否是管理员权限打开
开发语言·windows·git·bash
tonngw7 小时前
【Mac 从 0 到 1 保姆级配置教程 12】- 安装配置万能的编辑器 VSCode 以及常用插件
git·vscode·后端·macos·开源·编辑器·github
八股文领域大手子8 小时前
HTTP/1.1 host虚拟主机详解
github
橄榄熊9 小时前
Git 常用命令详解
git
HORSE RUNNING WILD11 小时前
解决 PicGo 上传 GitHub图床及Marp中Github图片编译常见难题指南
css·python·github
qianmoQ12 小时前
GitHub 趋势日报 (2025年05月13日)
github
lkbhua莱克瓦2414 小时前
用C语言实现了——一个基于顺序表的插入排序演示系统
c语言·开发语言·数据结构·程序人生·github·排序算法·交互
幸好我会魔法1 天前
使用githubPage+hexo搭建个人博客
笔记·github