NodeJS 如何在github上将客户端和服务器端的项目文件夹合并为一个项目(API + front end)?

bxjv4tth  于 2023-01-12  发布在  Node.js
关注(0)|答案(6)|浏览(148)

我已经完成了我的项目。

我的堆栈:

Front-End UI => Reactjs
Back-End => Nodejs/Expressjs + MongoDB

下面是包含这两个文件夹的project structure

project_Name > client + server

project_Name是主文件夹clientserver是单独的文件夹,都位于project_Name文件夹中。在clientserver文件夹中,我安装了相应的npm modules (reactjs + nodejs)
我的API end pointlocalhost:8000上运行,reactjslocalhost:5000上运行
所以现在我想把我的项目添加到github仓库中。我很困惑如何实现这个目标?我需要把客户端和服务器端的代码分别推到两个不同的git上吗?
或者
我只需要上传project_Name文件夹包含两个副项目文件?但它是这样的话,我怎么能做到这一点?因为在推到git之前,目录应该有package.json文件和node_modules,这将只在clientserver副文件夹内。
下面是推送我正在使用的项目的git命令:

git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/vik.........git
git push -u origin main

但是我不知道要先在哪个文件夹中启动repository?请告诉我解决方法。谢谢!

dhxwm5r4

dhxwm5r41#

如果您创建的项目有自己的文件夹,则需要执行以下操作:
根文件夹:项目/客户端/服务器
1.从根文件夹启动.git。

  1. git add .(然后添加所有文件)
  2. git commit...等等。如果你需要任何帮助,欢迎发表评论!
    它会一次添加所有文件,所以不要担心太多,它不会推任何空文件夹。
    在某些情况下create-react-app会自己创建一个git repo,在文件资源管理器中查找隐藏文件,并确保在推送内容之前删除客户端中的.git文件夹,它会抛出一个错误。
    在你的主文件夹上运行NPM安装,它会为你创建一个package.json。试着不要去想它,慢慢来。
    希望这能有所帮助!
slmsl1lt

slmsl1lt2#

我觉得你应该用这样的结构:

-projectName: folder
     - frontend: folder
        - package.json
     - backend: folder
        - package.json
     - package.json

你可以使用github操作来执行应用:
https://docs.github.com/en/free-pro-team@latest/actions
https://github.com/features/actions

你也可以使用像heroku或者firebase这样的服务,看我的项目(它只是一个解决你所要求的这个问题的简单项目)
https://github.com/simCecca/InformationVisualizationWorldWide
其结构为:

-projectName: folder 
     - frontend: folder 
        - package.json
     backend code
     package.json // containing the BE dependencies and the dependencies for the 
                     deploy in heroku in this case

https://dashboard.heroku.com/
我希望我回答了你的问题,如果我没有,请回复这个回复

zpjtge22

zpjtge223#

我通过在根文件夹中添加. gitignore文件(与客户端和服务器处于同一级别)并在其中添加以下行来解决这个问题:节点_模块/
这将忽略客户端和服务器两者的node_modules。
初始化git之后:

  1. Git初始化
  2. git添加。
  3. git commit-m '提交消息'
  4. git push-u原始主机
    现在您可以访问GitHub存储库并确认不再存在node_modules文件夹
ee7vknir

ee7vknir4#

删除node_modules并从根目录推送它。

x4shl7ld

x4shl7ld5#

只需要在前端和后端文件夹中复制并粘贴.gitignore文件,git不会上传git仓库中的node_modules文件夹。

dphi5xsq

dphi5xsq6#

在根文件夹中创建两个名为clientbackend的文件夹(假设名称为:my-project)。现在我们要像这样将代码推送到远程。
a)在GitHub中创建一个名为my-project的存储库(与根文件夹同名)b)检查my local的终端以检查它是否在根目录中。c)从根目录:my-project%运行以下所有命令。

git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/vik.........git
git push -u origin main

d)现在从每个文件夹[客户端后端]中的根创建**.gitignore**文件,并写入node_modules以忽略node_modules(如果需要)。

e)git add .
f)git commit -m 'all codes is pushed to remote'
g)git push origin main

现在所有的代码都在遥控器中。如果任何代码被更改,例如在客户端中。

a) cd client
b) git status
c9 git add ./ file name
d) git commit -m 'client code is pushed'
e) git push origin main

客户端代码现在也在远程更新。2希望对你有帮助。

相关问题