If you like DNray Forum, you can support it by - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 and more...

 

Synchronizing changes on a web project from different computers

Started by Marker, Sep 03, 2023, 12:08 AM

Previous topic - Next topic

MarkerTopic starter

Greetings, fellow developers! I would appreciate it if you could share your experience in organizing the development of a project from two computers.

I am not considering using GIT since I am working alone. Instead, I am using a cloud-based IDE where PHP, MySQL, and Yii2 are all located. This allows me to avoid setting up a LAMP server on both machines and enables me to work with two PCs. While this setup is convenient, I have encountered some issues such as wanting to use a different code editor.

Here's what I have:
1) Two computers (one running Linux and the other running Windows) for developing the Web project.
2) Web hosting where the project will be deployed.

I have tried the following approach:
Working on both computers while synchronizing the changes made.

I have attempted:
Using Sublime text 3 with the SFTP plugin (wbond) and hosting the project folder. However, it didn't work due to the plugin's limitations in displaying the project folder tree in Sublime text.

Using Sublime text 3 with the WinSCP plugin and hosting the project folder, but I couldn't find any instructions for the setup. Does anyone work like this?

Using Sublime text 3 with WinSCP and hosting the project folder. The idea is simple: selecting Sub-mode as the default editor in WinSCP and editing the project files directly on the hosting. Is this a viable solution?

I am eagerly awaiting any useful tips or recommendations.
  •  


cherq

Organizing the development of a project from two computers without using version control can be challenging, but it is still possible to achieve a workable solution. Here are a few suggestions:

1) Use a file synchronization tool: Consider using a tool like Dropbox, Google Drive, or Microsoft OneDrive to sync your project files across both computers. These tools will automatically keep your files up to date between the computers, allowing you to seamlessly switch between them. However, make sure to avoid simultaneous edits on both computers to avoid conflicts.

2) Remote desktop connection: Set up a remote desktop connection to one of your computers from the other. This way, you can access and work on your project files remotely from either computer. This solution requires a stable internet connection and might not be as efficient as working directly on the local machine.

3) Use a portable code editor: Instead of relying on Sublime Text, consider using a portable code editor like Visual Studio Code or Atom. You can save the editor, along with its settings and plugins, on a USB drive or cloud storage, making it easily accessible from both computers. This way, you can maintain a consistent coding environment across both machines.

4) Manual file transfer: If you prefer to work offline and only need occasional synchronization, you can manually copy the updated files between the two computers using tools like WinSCP (as you mentioned). In this case, use a synchronized folder on your local machine and transfer the updated files to the hosting environment when necessary.

5) Use a cloud-based code editor: Instead of relying on a local code editor, consider using a cloud-based code editor like Visual Studio Online or Codeanywhere. These platforms allow you to edit your project files directly in the browser, eliminating the need for synchronization between multiple computers.

6) Regular backups: Since you are not using version control, it is crucial to maintain regular backups of your project files. This can be done by manually copying the project folder to a separate location or using automated backup tools. This way, you can recover your project in case of any accidental changes or data loss.

7) Keep a development journal: As you work on different computers, it can be helpful to keep a development journal or log. dоcument the changes you make, any issues or challenges you encounter, and any solutions you come up with. This can serve as a reference and help you stay organized when working across different machines.

8) Clear communication and synchronization plan: If you are working on the same project simultaneously on both computers, it is important to establish a clear communication and synchronization plan. Coordinate with yourself (or any other team members, if applicable) about when and how you will synchronize the changes made on each computer to avoid conflicts and ensure consistency.

9) Consider using a portable server environment: Instead of relying on a cloud-based IDE or hosting environment, you can set up a portable server environment on a USB drive or an external hard drive. This way, you can carry your development environment with you and connect it to any computer you need to work on.

10) Explore other collaboration tools: While you may not be using version control, there are other collaboration tools that can enhance your development process. For example, project management tools like Trello or Asana can help you manage tasks and keep track of progress. Communication tools like Slack or Microsoft Teams can facilitate collaboration and make it easier to communicate with others involved in the project.

11) Establish a clear file organization structure: To avoid confusion and make it easier to synchronize files between computers, establish a consistent file organization structure. Create folders for different components or features of your project and ensure that both computers follow the same structure. This way, it will be easier to locate and synchronize specific files or directories.

12) Use a cloud storage service: Consider using a cloud storage service like Dropbox, Google Drive, or OneDrive to store and sync your project files. By saving your project files in a designated folder synced across both computers, you can ensure that changes made on one computer are automatically updated on the other. Additionally, most cloud storage services offer file versioning, allowing you to recover previous versions of your project files if needed.

13) Utilize a code snippet manager: If you find yourself frequently reusing code snippets or snippets specific to your project, consider using a code snippet manager tool. These tools allow you to store and organize commonly used code snippets, making it easier to access and insert them into your project files regardless of the computer you're working on.

14) Regularly export and import your database: If your project involves a MySQL database, regularly export and import the database between the two computers. This can be done using tools like PhpMyAdmin or MySQL Workbench. By keeping the database in sync, you can ensure that both computers have the latest updates and changes.

15) Periodic code reviews and comparisons: Since you are not using version control, periodically review and compare the code changes made on each computer. Use tools like diff or file comparison software to identify any differences and manually merge the changes as needed.

16) Backup important files externally: In addition to using a cloud storage service, consider backing up important project files externally. This can be done by saving copies of critical files on a different hard drive or using external backup solutions like external hard drives or network-attached storage (NAS) devices. Having an extra layer of backup ensures that your project files are protected in case of any unforeseen issues.

17) dоcument your development process: As you work on your project from two computers, it can be helpful to dоcument your development process. This dоcumentation can include steps you take to synchronize changes, specific tools or techniques you use, and any challenges or solutions you come across. This dоcumentation will serve as a reference and help streamline your workflow.
  •  

tinjuashok

Do you require a version control system? Who claimed that git is exclusively for collaborative development? Git will suffice. Monitoring changes is effortless, and there is no need for numerous plugins to transfer and upload files to a remote server. Start a branch, tighten the server, resolve conflicts if needed, and that's it. If you're not keen on utilizing git, consider using Bitbucket or GitHub. Both platforms offer free services for individual users.

In PhpStorm, you have the option to synchronize the working directory with the server via sftp or ftp. This functionality can be accessed through the deployment section in the settings.
  •  

posaldi

I don't understand why git is not suitable. I use git to work from two computers, and even for my pet project at home, I still post it in tfs. Anything can happen - the screw can fly or the wife can steal the computer. You never know.

Using version control will make you happy.
  •  


If you like DNray forum, you can support it by - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 and more...