• Resolved fprasuhn

    (@fprasuhn)


    Greetings:

    First, apologies for the lack of knowledge and understanding on my part. To be honest, I don’t even know what term/phrase to use for searching. Although, I have tried…leaving me still confused.

    Best way for me to explain what I am looking to do is to talk about an old Windows tool called Briefcase. Briefcase would allow you to download files from a network location to your local machine; especially helpful if you worked on a laptop and remotely/travel. You then could edit, modify, and all the usual things to a file. Once back to home base, you could tell briefcase to update the original file(s).

    As a novice in the web design/development world, and with little local support, I want to ask if there is such tools available for me to consider using. I support a small nonprofit group. I would like to keep a development copy of the site on my local machine. Test out new plugins, make changes, etc. Then, once I am happy with how things are sync up my local with the live changing only the files and code that need to be updated.

    I know I can clone and use backup files, but then I have to push all the related files back to live site. Really not practical.

    Am I dreaming too much?

    I heard about git, bit bucket, and other similar tools. So far, what I am reading is not making any sense to me.

    Your wisdom and advice are always appreciated. Please, just keep it simple for me little brain. ??

Viewing 8 replies - 1 through 8 (of 8 total)
  • Tools like that come in different flavors, certainly!

    For your requirement specifications, using git with a repository like Bitbucket could be slightly overkill, unless there was someone besides yourself doing development work on the site also.

    What I can recommend for you, is a combination of two or three WordPress-specific tools:

    1.) DesktopServer by ServerPress (free version should suffice for your needs)
    2.) Duplicator (free version should suffice for your needs)

    DesktopServer allows you to spin up fresh installations of WordPress on your local computer in seconds, using Blueprints (and you can create your own pre-configured blueprints). You can then carry out local testing and development work.

    If you choose to use DesktopServer, I highly recommend you take the following Udemy course for a structured way of quickly getting comfortable using it in different ways: https://www.udemy.com/desktopserver

    The Duplicator plugin allows you to create complete packages of a website, which you can use in two ways:

    1.) You can create a package of your local development site, which you can upload to a website’s root content folder on a server, and then follow the necessary steps to install the site. (NOTE: the paid version of DesktopServer will allow you to deploy your local website directly up to a live website, essentially replacing the live website with your local website).

    2.) Create a package of the live website, which you can then download to your local computer and import into DesktopServer.

    The third tool I can recommend, if you think you’ll need it, is WP Migrate DB Pro.

    This plugin essentially allows you to easily synchronize databases between sites. While Duplicator and DesktopServer are very efficient for replacing the entire site each time, WP Migrate DB Pro allows fine-grain control over which database tables—if not the entire database—that you want to quickly sync to and from a website. They also have an add-on that allows you to sync media library files as well.

    This third option is helpful if you’re just making small tweaks that you want to quickly sync up to a live website.

    There is a free version available called WP Migrate DB, but I’ve only used the pro version, so I can’t comment on how useful/limited it is in comparison.

    Hope that helps.

    Thread Starter fprasuhn

    (@fprasuhn)

    Nichlas,

    Thank you for your recommendation. I reviewed the materials and they see user friendly (for me).

    You did make a point that I did not consider when posting my original message. I do have a friend that is willing to help me from time to time. So, having the ability to share access to a central system would be beneficial. I did read the basics of GIT and BitBucket. I got lost in the text when it was not clear which “repository” was in action (original site, cloud copy, working copy).

    What would you suggest for me to consider with one additional person working on development files and then to neatly upload the altered information to the live site?

    Thank you, again. I greatly appreciate your willingness to assist.

    Glad to be of assistance. ??

    I think you have two options.

    The not-so ideal but still viable option is that only one of you works on the site at a time, then uploads the changes, with no optimal way to share code and text changes with each other. You won’t be able to easily keep track of the changes the other person has made and vice versa.

    So basically you’re just taking turns downloading the live site and uploading your local site when finished tweaking.

    For this option, you just stick with the tools I’ve suggested.

    The ideal option, however, is that you learn Git version control and then use whichever private git repository you prefer (BitBucket, GitHub, GitLab, etc.). I started with GitHub (most online tutorials seem to exist for this one as well) and later moved to GitLab.

    It will probably be a lot easier if you learn this visually as opposed to just reading.

    For this, when you have time to spare, I can suggest you activate a 1-week trial account with Team Treehouse and then take these two courses:

    1.) Console Foundations (only if you’re new to using and navigating the command line interface)

    2.) Git Basics

    While I have taken Console Foundations, I have not taken the Git Basics course (yet). I started using Git through Carrie Dils and Mika Epstein’s great WordPress Development Workflow webinar course, supplemented with some reading and then took off from there. Their course also briefly covers DesktopServer and talks a little bit about Duplicator and WP Migrate DB Pro as well as other helpful tools.

    If you’re going to use Git and you’re on a Windows operating system, you may consider installing Git for Windows so you can use the Git Bash command prompt. But do this after (unless instructed otherwise) the Treehouse Git course.

    * Download Git for Windows
    * Install Git for Windows using this guide (just the “How to install GIT on Windows” section)

    Once installed, look for the “Git Bash” executable and use this.

    Thread Starter fprasuhn

    (@fprasuhn)

    Nichlas:

    Thank you, again.

    I am finding that Git is not as challenging as it seems. (At least that is what I think now.)

    What is still stumping me is how do I get changes back to the live site? I want to have a basic idea of what is involved before I make the dive into Git. All that I have watched and read talks about versions and working with others. So far, nothing begins to show how to go from completed and approved dev to production/live site.

    FYI: I have a Mac.

    Thread Starter fprasuhn

    (@fprasuhn)

    Carrie Dil and Mika Epstein’s great WordPress Development Workflow webinar course. It appears this may answer my final question?

    No problem!

    The webinar course will definitely show you some methods of getting each of these things done.

    But to give you a basic idea, here’s a process you can use (you’ll learn all the git steps once you dive into git):

    1. Set up your local site with DesktopServer (or download and import the live site into DesktopServer)
    2. Create an online repository on BitBucket/GitHub/GitLab that will contain the files you’re going to be working on (this will usually be theme and plugin folders)
    3. Clone the repository’s master branch to the respective local folder (let’s say a specific theme folder) you’ll be working on
    4. Add and push the local files to the online repository you have connected to (by cloning in step 3)
    5. Begin working on your local development files and submitting the changes to the online repository so other people can access the same files. Then you just keep track of when the other person has made changes which you can sync down to replace the respective local files
    6. Once done and tested, you just use Duplicator (or paid version of DesktopServer) to move your local site to the live site

    Of course, one additional step you may consider, is creating a staging WordPress site on the same live server that the production site is on (you can use a subdomain like ‘staging.example.com’ for this). Move your local site to staging first, test that everything works on the live server, then move from staging to production site. This is to minimize any risk that the production site breaks when your local changes are applied.

    So, with DesktopServer, Duplicator, and WP Migrate DB Pro, there are different ways you will be able to go about moving your sites (or just syncing database tables and/or files) back and forth. As you get comfortable with each of these tools, you’ll eventually figure out your own workflow.

    There are also more involved methods of deploying directly from git (on your local machine) or an online repository, to the live server. This is something you can optionally explore in the future.

    And don’t worry about git, it’s really easy to use once you’ve been shown how to do it and know the most essential commands.

    All this is a mouthful, but just take it one bit at a time. ??

    Thread Starter fprasuhn

    (@fprasuhn)

    Nichlas,

    Thank you again for the information. I am attempting to work through things. So far, I am confused. I will attempt to keep digging through.

    Ah, don’t worry, you’re just getting started. I’ve been there as well. Confusion is part of the job in this field as we’re constantly on our toes learning new tricks. Stick with it and you’ll get there.

    Let me also say that I learned about using each of those tools one at a time, and either weeks or months apart, because I wasn’t introduced to all of them at once like you have been here. So don’t hesitate to take your time. ??

Viewing 8 replies - 1 through 8 (of 8 total)
  • The topic ‘Dev vs Prod. Briefcase. Sync.’ is closed to new replies.