一文说清:Git创建仓库的方法

0 引言

本文介绍如何创建一个 Git 本地仓库,以及与远程仓库的关联。

1 初始化仓库(git init)

1.1 概述

Git 使用 git init 命令来初始化一个 Git 仓库,Git 的很多命令都需要在 Git 的仓库中运行,所以 git init 是使用 Git 的第一个命令。

在执行完成 git init 命令后,Git 仓库会生成一个 .git 目录,该目录包含了资源的所有元数据,其他的项目目录保持不变。

1.2 方法一:创建目录后初始化

进入想要创建仓库的目录,或者先创建一个新的目录:

复制代码
mkdir my-project
cd my-project

使用当前目录作为 Git 仓库,只需使它初始化。

复制代码
git init

截图如下:

该命令执行完后会在当前目录生成一个 .git 目录。

1.3 方法二:使用指定目录作为Git仓库

复制代码
git init newrepo

命令截图如下:

初始化后,会在 newrepo 目录下会出现一个名为 .git 的目录,所有 Git 需要的数据和资源都存放在这个目录中。

1.4 与远程仓库关联

使用 git remote add 命令关联远程仓库,如下:

复制代码
git remote add origin repo
#查看远程仓库信息
git remote -v

示例截图:

1.5 从远程仓库拉取内容

在此之前,确保用add命令和commit命令提交了内容到本地仓库。

使用git pull命令,具体如下:

复制代码
git pull origin main

命令截图如下:

上图提示错误,原因是,本地创建的仓库是全新的,与远程仓库没有共同历史的基础。需要用如下命令:

复制代码
git pull origin main --allow-unrelated-histories

允许 Git 合并没有共同历史的基础,但请确保你了解这可能会带来的合并冲突,并准备好解决这些冲突。

会提示要修改冲突日志。

截图如下:

拉取后,目录的内容变成如下:

红框中的文件,为远程仓库的内容。

1.6 推送本地库的内容到远程仓库

使用如下命令:

复制代码
git push -u origin main

截图如下:

1.7 小结

用init命令创建本地库之后,不添加任何内容,直接与远程仓库关联,从远程仓库拉取内容,此时能够正常。示例如下:

否则,创建本地库后,又添加了内容,操作就麻烦了。上面的步骤就是这样的结果。

所以,用init命令,感觉不是很方便。

2 添加版本控制(git add)

如果当前目录下有文件想要纳入版本控制,需要用 git add 命令告诉 Git 开始对这些文件进行跟踪,然后提交:

复制代码
# 添加所有文件到暂存区
git add .
# 查看状态
git status
# 提交文件到本地仓库
git commit -m '初始化项目版本'

以上命令,将目录下的文件提交到本地仓库中。

截图如下:

注:

在 Linux 系统中,commit 信息使用单引号 ',Windows 系统,commit 信息使用双引号 "。

所以在 git bash 中 git commit -m '提交说明' 这样是可以的,在 Windows 命令行中就要使用双引号 git commit -m "提交说明"。

3 克隆(git clone)

3.1 概述

使用 git clone 从现有 Git 仓库中拷贝项目(类似 svn checkout)。

3.2 命令格式

克隆仓库的命令格式为:

复制代码
git clone <repo>

如果我们需要克隆到指定的目录,可以使用以下命令格式:

复制代码
git clone <repo> <directory>

参数说明:

repo:Git 仓库。

directory:本地目录。

3.3 示例

复制代码
git clone https://github.com/h2768/test htest

截图如下:

本地文件如下:

如果要自己定义要新建的项目目录名称,可以在上面的命令末尾指定新的名字:

4 配置(git config)

git 的设置使用 git config 命令。

4.1 显示当前的 git 配置信息

复制代码
git config --list

4.2 编辑 git 配置文件

复制代码
git config -e    # 针对当前仓库 

或者:

复制代码
git config -e --global   # 针对系统上所有仓库

4.3 设置提交代码时的用户信息

复制代码
$ git config --global user.name "runoob"
$ git config --global user.email test@runoob.com

如果去掉 --global 参数只对当前仓库有效。

5 总结

总体上来看,更倾向于用clone的方式,来创建本地仓库。

6 参考

https://www.runoob.com/git/git-create-repository.html

相关推荐
恋喵大鲤鱼9 小时前
git mv
git·git mv
Patrick_Wilson13 小时前
Git Worktree 原理详解:从 objects / refs 看懂多分支并行与多 Agent 协作
git·面试·ai编程
yaoxiaoganggang13 小时前
克隆 Superpowers 的规则库到你的本地(或者直接作为 Git Submodule)
人工智能·经验分享·git·ai编程
Python私教16 小时前
用 Claude Code 做大型重构不翻车:分批+Git 兜底+验证闭环的实战流程(2026)
git·重构·ai编程·代码重构·工程实践·claude code
Shawn Dev17 小时前
团队协作中的 Git Tag 最佳实践:从入门到精通
大数据·git·elasticsearch
独隅18 小时前
Git/GitHub/GitLab/Gitee 核心对比指南
git·gitlab·github
佛山个人技术开发19 小时前
GitCode个人技术开发者总结完整使用指南
windows·git·svn·github·gitcode
江华森19 小时前
基于 Git 的自动集成交付(Git-Driven CI/CD)实战
git·ci/cd
Dontla20 小时前
.gitkeep文件作用(让Git追踪空目录,使该目录能被纳入版本控制)!.gitkeep
大数据·git·elasticsearch
shandianchengzi20 小时前
【记录】VSCode|Windows 下 VS Code 配置 Git Bash 为默认终端完整教程
windows·git·vscode·bash