likes
comments
collection
share

vs 项目本地创建与github同步保姆级教程(windows系统)

作者站长头像
站长
· 阅读数 56

将本地文件夹结构和项目更新到GitHub,并确保以后可以持续更新,可以按照以下步骤操作:

1. 创建一个新的GitHub仓库

首先,在GitHub上创建一个新的仓库:

  1. 登录到GitHub。
  2. 点击右上角的 “+” 按钮,选择 “New repository”。
  3. 输入仓库名称(例如这里的:Show3D),填写描述(可选),然后点击 “Create repository”。

2. 在本地初始化Git仓库并链接到GitHub

在本地项目文件夹中(例如:F:\work\Item\earlyItemOpenGL\Show3D),右键 git bash here ,如下所示

vs 项目本地创建与github同步保姆级教程(windows系统)

然后执行以下步骤:

(1)初始化Git仓库

git init

vs 项目本地创建与github同步保姆级教程(windows系统)

(2)添加所有文件到Git仓库

温馨提示本小结看完后再进行操作,避免弯路。

git add .

问题 1

vs 项目本地创建与github同步保姆级教程(windows系统)

上图中的这个错误消息表明 Git 对当前项目目录的所有权存在疑虑,尤其是在文件系统不记录文件所有权的情况下。这通常发生在 Windows 或某些类型的网络文件系统上。你可以通过将当前项目目录添加到 Git 的“安全目录”列表中来解决这个问题。以下是具体步骤:

git config --global --add safe.directory F:/work/Item/earlyItemOpenGL/Show3D

这个命令告诉 Git 将 F:/work/Item/earlyItemOpenGL/Show3D 目录视为安全目录,之后你就可以正常使用 Git 命令了,如下所示。

vs 项目本地创建与github同步保姆级教程(windows系统)

如果没有错误则直接进入下一步。

(3)提交更改

git commit -m "Initial commit"

问题 2

vs 项目本地创建与github同步保姆级教程(windows系统)

这是因为 Git 还没有配置你的用户名和电子邮件地址,这是每次你提交更改时所必需的。这些信息将被嵌入到每个提交中,以便可以追踪提交的作者。你可以通过以下步骤来设置这些信息:

(3.1)配置用户名和电子邮件地址
  1. 设置全局用户名和电子邮件(适用于所有Git项目):

    git config --global user.name "Your Name"
    git config --global user.email "you@example.com"
    
  2. 如果只想为当前项目设置用户名和电子邮件

    git config user.name "Your Name"
    git config user.email "you@example.com"
    

再次执行,提示下图

问题 3

vs 项目本地创建与github同步保姆级教程(windows系统)

这个提示说明当前在 master 分支上,没有任何需要提交的更改。你需要确保已经添加了文件到 Git 的索引中,然后再进行提交。所以我们在本地建立一系列我们需要的文件夹,当然仅仅是空文件夹也是不行的。

vs 项目本地创建与github同步保姆级教程(windows系统)

我们需要创建我们的C++项目,避免空文件夹,然后再次重复上面的步骤

问题 4

对于 vs 的项目,可能会有如下的问题

vs 项目本地创建与github同步保姆级教程(windows系统)

这个错误信息表明,在运行 git add . 命令时,Git 试图添加一个文件(code/.vs/Show3D/v15/Browse.VC.opendb),但由于权限问题无法打开该文件。

(4.1)排除特定文件或文件夹
  • 使用 .gitignore 文件来排除不需要跟踪的文件或文件夹,例如 Visual Studio 生成的 .vs 文件夹。
  • 在你的项目根目录下创建或编辑 .gitignore 文件,并添加以下内容:
# Visual Studio temporary files and folders
.vs/

简单操作如下所示

echo ".vs/" >> .gitignore

这样就可以继续使用 git add . 了。

问题 5

如果此时又出现了

vs 项目本地创建与github同步保姆级教程(windows系统)

这些警告消息表明,在工作目录中的某些文件(如 others/glfw-3.4/tests/timeout.c 等)中,行结束符(line endings)将从 LF(换行符,常用于 Unix/Linux 系统)被替换为 CRLF(回车换行符,常用于 Windows 系统)。

  • LF (Line Feed) :通常表示为 \n,是 Unix/Linux 系统的行结束符。
  • CRLF (Carriage Return Line Feed) :通常表示为 \r\n,是 Windows 系统的行结束符。

Git 在处理不同操作系统之间的代码时,通常会自动转换行结束符,以确保文件在不同操作系统之间的一致性。

(5.1)处理方式1
  • 创建 .gitattributes 文件: 在你的项目根目录下创建 .gitattributes 文件,添加以下内容:
    # Handle all text files
    * text=auto
    
    # Handle specific file types
    *.c text eol=lf
    *.h text eol=lf
    
  • 全局配置行结束符: 根据你的操作系统,选择适合的全局设置命令。 对于 Windows 用户:
git config --global core.autocrlf true

对于 Unix/Linux/macOS 用户:

git config --global core.autocrlf input

然后再次运行 git add . 命令:

(5.2)处理方式2

因为引起问题的文件夹 others 刚好是一个没有用的文件夹,这里顺便认识一下新的命令

  • 撤销对 others 目录的添加
git reset others
  • 创建或编辑 .gitignore 文件:
echo "others/" >> .gitignore

重新添加未被忽略的文件和目录:git add .

程序搭建好后我们就可以来到下一个步骤

(4)添加远程仓库URL

git remote add origin https://github.com/your-username/MyCppProject.git

(5)提交暂存区的更改

此时需要注意一下远程仓库的分支,这里远程仓库的分支是 main。假设当前分支是 master,切换到新的分支:

git checkout -b main  # 创建并切换到 main 分支

修改先后都可以查看暂存区的状态

git status  # 查看暂存区的状态

提交暂存区的更改

git commit -m "Initial commit"

(6)推送到远程仓库

git push -u origin main
转载自:https://juejin.cn/post/7379512671618727988
评论
请登录