为什么创建React应用时会自动创建.git文件夹?

时间:2019-02-27 21:54:12

标签: reactjs git

我不明白为什么在终端中创建create-react-app时会自动创建.git文件夹。

没有.gitignore文件夹,但是有.git文件夹。
有人知道为什么吗?这是文件夹的图片

enter image description here

2 个答案:

答案 0 :(得分:1)

create-react-app是一个为您创建反应框架的应用程序。
CLI命令还将文件夹设置为git folder

git init是此脚本的一部分 https://github.com/facebook/create-react-app/blob/47e9e2c7a07bfe60b52011cf71de5ca33bdeb6e3/packages/react-scripts/scripts/init.js

代码的相关部分是这样的:

function tryGitInit(appPath) {
  ...
  execSync('git init', { stdio: 'ignore' });

   execSync('git add -A', { stdio: 'ignore' });
   execSync('git commit -m "Initial commit from Create React App"', {stdio: 'ignore' });
   return true;

}

您会看到CLI命令create git仓库,添加并提交生成的文件作为初始提交。

这就是为什么您拥有.git文件夹的原因。

答案 1 :(得分:0)

我的猜测是,因为create-react-app基于facebook GitHub存储库,并且在他们的工作流程中,他们使用git来管理/提交您的工作,因此在创建新项目时将其作为默认内容包含在内。

您始终可以在与.git文件夹相同的级别上手动添加.gitignore(它不必位于.git文件夹内)。我更喜欢使用vim来做到这一点...

vim .gitignore

然后您可以按 i 开始编辑文件并写入要忽略的任何文件夹(即node_modules,build)。

然后按Escape键并按 w q 保存文件。

如果要将更改提交到git hub等远程存储库,则将使用以下命令,并将URL更改为指向您的存储库。

# stage all your changes
git add .

# commits them to your local repository with a message
git commit -m "This change has been made"

# add remote url
git remote add origin https://github.com/example-user/example-repo.git


# pushes the changes you have committed to master branch
git push -u

在使用master以外的分支时,还有更多git命令要考虑,但这应该足以使您入门。

希望这能回答您的问题,

马特