I have seen that they say a lot that '' In production this … '', '' to bring your project to production … '' and that definition confuses me. I hope you can resolve the question of what it means to take a project to production. Thanks in advance.
ML; NL (Very Long, I didn't read or TL; DR)
A project that is already in production is a project, in a usable state, tested (ideally), that is located on a server (either public or local) already accessible to the client or end user.
In general, a project can run in different environments. The most common of these are:
An application runs in this mode while it is still developing. For example, in the case of a web application, if you continue to manipulate the code and do local tests on your machine, you are in the development phase.
If you are doing development with unit tests (Test Driven Development), you will schedule tests that guarantee that your application works and meets a series of requirements. When you run these tests, many times you want to have certain fixed data and run your application with a certain configuration. For this there is this environment.
Production testing (staging)
Since your application is almost ready, you will want to test almost what it will look like. You will probably upload it to a test server, whose configuration will be practically identical to the server on which your application will finally run. However, you may disable certain functionality, such as sending emails or connecting to external services to avoid unnecessary costs at this stage. Acceptance tests are generally run in this mode.
It is the environment in which the application runs that the end user will already use. At this point, all the functionality of the application must be available and any connection with an external service must be enabled.
You can consult this reference to better understand the development phases of test-based Software.