{"id":116407,"date":"2020-04-16T13:08:07","date_gmt":"2020-04-16T13:08:07","guid":{"rendered":"https:\/\/www.softwaretestinghelp.com\/?page_id=116407"},"modified":"2025-04-01T08:29:15","modified_gmt":"2025-04-01T08:29:15","slug":"github-desktop-tutorial","status":"publish","type":"page","link":"https:\/\/www.softwaretestinghelp.com\/github-desktop-tutorial\/","title":{"rendered":"GitHub Desktop Tutorial &#8211; Collaborate With GitHub From Your Desktop"},"content":{"rendered":"<p><strong>This Tutorial Explains how to Download and use the GitHub Desktop to Collaborate With GitHub From Your Desktop for Efficient Version Control:<\/strong><\/p>\n<p>As we all know, GitHub provides a website to host Git repositories. In our previous tutorials on GitHub, we have seen the developer\u2019s activities on versioning files mostly on GitHub.<\/p>\n<p>There is also a Git Client wherein the developers can work on the repository offline on their local machines using git commands from the command prompt or git bash, make changes and push it back to the remote repository on GitHub.<\/p>\n<p><strong>=&gt; <a href=\"https:\/\/www.softwaretestinghelp.com\/github-tutorial\/\">Visit Here To Learn GitHub From Scratch<\/a><\/strong><\/p>\n<p><em><strong> <\/strong><\/em><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Working-with-GitHub-Desktop.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-117998\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Working-with-GitHub-Desktop.png\" alt=\"Working with GitHub Desktop\" width=\"650\" height=\"366\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Working-with-GitHub-Desktop.png 650w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Working-with-GitHub-Desktop-300x169.png 300w\" sizes=\"(max-width: 650px) 100vw, 650px\" \/><\/a><\/p>\n<h2>GitHub Desktop<\/h2>\n<p>Though the Git commands executed from the command line are great from a learning point of view, there is a good user interface to work on the local repositories i.e. <strong>GitHub Desktop.<\/strong><\/p>\n<p>GitHub Desktop for Windows can be downloaded and installed from the following <a href=\"https:\/\/desktop.github.com\/\" target=\"_blank\" rel=\"noopener nofollow\">URL<\/a><\/p>\n<p><strong>Launch GitHub Desktop<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Launch-GitHub-Desktop.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116453\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Launch-GitHub-Desktop.png\" alt=\"Launch GitHub Desktop\" width=\"740\" height=\"330\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Launch-GitHub-Desktop.png 740w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Launch-GitHub-Desktop-300x134.png 300w\" sizes=\"(max-width: 740px) 100vw, 740px\" \/><\/a><\/p>\n<h3>Work With The Remote Repository<\/h3>\n<p>Once the GitHub desktop is launched, we can start by cloning the remote repository to the local machine, make changes and push it back to the remote repository.<\/p>\n<p><strong>Account Settings<\/strong><\/p>\n<p>In GitHub Desktop, go to <strong>File =&gt; Options<\/strong> and ensure your GitHub account is setup.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Account-settings.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116454\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Account-settings.png\" alt=\"Account settings\" width=\"553\" height=\"316\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Account-settings.png 553w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Account-settings-300x171.png 300w\" sizes=\"(max-width: 553px) 100vw, 553px\" \/><\/a><\/p>\n<p>In GitHub Desktop, to clone a repository select <strong>File =&gt; Clone Repository<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Clone-Repository.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116455\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Clone-Repository.png\" alt=\"Clone Repository\" width=\"356\" height=\"222\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Clone-Repository.png 356w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Clone-Repository-300x187.png 300w\" sizes=\"(max-width: 356px) 100vw, 356px\" \/><\/a><\/p>\n<p>Go to the URL tab and enter the remote repository details in the form of the <strong>GitHub Username\/repository. <\/strong>Click on <strong>Clone<\/strong>.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Clone..png\"><img decoding=\"async\" class=\"alignnone wp-image-116456 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Clone..png\" alt=\"Clone a Repository\" width=\"481\" height=\"287\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Clone..png 481w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Clone.-300x179.png 300w\" sizes=\"(max-width: 481px) 100vw, 481px\" \/><\/a><\/p>\n<p>Now as the repository is cloned to the local machine, we can open the local repository contents using command prompt or explorer or even Atom editor if installed and make changes to the files.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Open-In-command-prompt.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116457\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Open-In-command-prompt.png\" alt=\"Open In command prompt\" width=\"740\" height=\"334\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Open-In-command-prompt.png 740w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Open-In-command-prompt-300x135.png 300w\" sizes=\"(max-width: 740px) 100vw, 740px\" \/><\/a><\/p>\n<p>Make changes to the files and save the same.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Make-changes-to-the-files-and-save.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116458\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Make-changes-to-the-files-and-save.png\" alt=\"Make changes to the files and save\" width=\"610\" height=\"110\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Make-changes-to-the-files-and-save.png 610w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Make-changes-to-the-files-and-save-300x54.png 300w\" sizes=\"(max-width: 610px) 100vw, 610px\" \/><\/a><\/p>\n<p>Back in the GitHub Desktop, you can see the <strong>RED <\/strong>marking which specifies if the lines were added or were deleted.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/RED-markings.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116459\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/RED-markings.png\" alt=\"RED markings\" width=\"740\" height=\"395\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/RED-markings.png 740w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/RED-markings-300x160.png 300w\" sizes=\"(max-width: 740px) 100vw, 740px\" \/><\/a><\/p>\n<p>Add a Summary and Co-authors if needed and click on <strong>Commit to master <\/strong>at the bottom.<\/p>\n<p>You will notice that most of the git commands that you execute from the command prompt have been done through the user interface.<\/p>\n<p>We can now push the changes to the remote repository in GitHub. Click on <strong>Push origin.<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Push-origin.png\"><img decoding=\"async\" class=\"alignnone wp-image-116460 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Push-origin.png\" alt=\"Push origin\" width=\"718\" height=\"110\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Push-origin.png 718w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Push-origin-300x46.png 300w\" sizes=\"(max-width: 718px) 100vw, 718px\" \/><\/a><\/p>\n<p>Now the changes are visible in the master branch. To ensure that the changes are merged to the feature branch we will need to create a <strong>Pull Request.<\/strong><\/p>\n<p><strong>Further Reading =&gt; <a href=\"https:\/\/www.softwaretestinghelp.com\/github-advanced-security\/\">GitHub Advanced Security &#8211; An Introductory Tutorial<\/a><\/strong><\/p>\n<p>Switch to the <strong>feature<\/strong> branch and create a <strong>Pull Request.<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Switch-to-the-feature-branch.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116462\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Switch-to-the-feature-branch.png\" alt=\"Switch to the feature branch\" width=\"740\" height=\"340\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Switch-to-the-feature-branch.png 740w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Switch-to-the-feature-branch-300x138.png 300w\" sizes=\"(max-width: 740px) 100vw, 740px\" \/><\/a><\/p>\n<p>Click on <strong>Create Pull Request.<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Create-Pull-Request.png\"><img decoding=\"async\" class=\"alignnone wp-image-116463 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Create-Pull-Request.png\" alt=\"Create Pull Request\" width=\"740\" height=\"248\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Create-Pull-Request.png 740w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Create-Pull-Request-300x101.png 300w\" sizes=\"(max-width: 740px) 100vw, 740px\" \/><\/a><\/p>\n<p>You are then re-directed to GitHub to create the Pull Request.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Create-the-Pull-request.png\"><img decoding=\"async\" class=\"alignnone wp-image-116464 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Create-the-Pull-request.png\" alt=\"Open Pull request\" width=\"740\" height=\"283\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Create-the-Pull-request.png 740w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Create-the-Pull-request-300x115.png 300w\" sizes=\"(max-width: 740px) 100vw, 740px\" \/><\/a><\/p>\n<p>Proceed to create and merge the Pull Request and then finally <strong>pull<\/strong>(sync) the changes to your local repository.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Updated-helloWorld-file.png\"><img decoding=\"async\" class=\"alignnone wp-image-116465 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Updated-helloWorld-file.png\" alt=\"Merging Pull Request\" width=\"583\" height=\"136\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Updated-helloWorld-file.png 583w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Updated-helloWorld-file-300x70.png 300w\" sizes=\"(max-width: 583px) 100vw, 583px\" \/><\/a><\/p>\n<p>From the Repository, the menu selects the Pull option.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Select-the-Pull-option.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116466\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Select-the-Pull-option.png\" alt=\"Select the Pull option\" width=\"502\" height=\"154\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Select-the-Pull-option.png 502w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Select-the-Pull-option-300x92.png 300w\" sizes=\"(max-width: 502px) 100vw, 502px\" \/><\/a><\/p>\n<p>Now the local repository would be in sync with the remote repository.<\/p>\n<h3>Create A New Local Repository And Branch<\/h3>\n<p>In the previous section, we learned about working with the remote repository by cloning it. Using GitHub desktop, we can also create a new local repository and push or publish the same to GitHub.<\/p>\n<p>Click on <strong>File =&gt;New Repository<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/New-repository.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116467\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/New-repository.png\" alt=\"New repository\" width=\"299\" height=\"164\" \/><\/a><\/p>\n<p>Enter the name of the repository and the local path. Click on <strong>Create Repository.<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Enter-the-name-of-the-repository-and-the-local-path.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116468\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Enter-the-name-of-the-repository-and-the-local-path.png\" alt=\"Enter the name of the repository and the local path\" width=\"484\" height=\"543\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Enter-the-name-of-the-repository-and-the-local-path.png 484w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Enter-the-name-of-the-repository-and-the-local-path-267x300.png 267w\" sizes=\"(max-width: 484px) 100vw, 484px\" \/><\/a><\/p>\n<p>As the repository is created, you can also create a branch before you publish\/push the changes to GitHub.<\/p>\n<p>Select <strong>New branch <\/strong>from the <strong>Branch<\/strong> menu<strong>. <\/strong>Call it to <strong>feature<\/strong> and click on <strong>Create branch<\/strong>.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Call-it-feature-and-click-on-Create-branch.png\"><img decoding=\"async\" class=\"alignnone wp-image-116469 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Call-it-feature-and-click-on-Create-branch.png\" alt=\"Create branch\" width=\"478\" height=\"306\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Call-it-feature-and-click-on-Create-branch.png 478w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Call-it-feature-and-click-on-Create-branch-300x192.png 300w\" sizes=\"(max-width: 478px) 100vw, 478px\" \/><\/a><\/p>\n<p>Now we do have 2 branches and we can proceed to Publish \/ Push the changes to GitHub. Click on <strong>Publish repository.<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Publish-repository.png\"><img decoding=\"async\" class=\"alignnone wp-image-116470 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Publish-repository.png\" alt=\"Publish repository\" width=\"736\" height=\"111\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Publish-repository.png 736w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Publish-repository-300x45.png 300w\" sizes=\"(max-width: 736px) 100vw, 736px\" \/><\/a><\/p>\n<p>Click on <strong>Publish Repository.<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Enter-Name.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116471\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Enter-Name.png\" alt=\"Enter Name\" width=\"535\" height=\"434\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Enter-Name.png 535w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Enter-Name-300x243.png 300w\" sizes=\"(max-width: 535px) 100vw, 535px\" \/><\/a><\/p>\n<p>As there is also a Feature branch, you must publish the feature branch as well. Now the changes can be made to the files locally and then push the changes to the remote repository. Changes in the remote repository should also be in sync with the local repository.<\/p>\n<h3>Merge Changes In Local Repository<\/h3>\n<p>Assume that there are changes in the feature branch in the local repository. We can merge the changes to the master branch. Post this we should push the changes of the master and feature branch to GitHub.<\/p>\n<p>Make a change to a file in the feature branch and commit the same.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Make-a-change-to-a-file-in-feature-branch-and-commit-the-same.png\"><img decoding=\"async\" class=\"alignnone wp-image-116472 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Make-a-change-to-a-file-in-feature-branch-and-commit-the-same.png\" alt=\"Commit to feature\" width=\"740\" height=\"432\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Make-a-change-to-a-file-in-feature-branch-and-commit-the-same.png 740w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Make-a-change-to-a-file-in-feature-branch-and-commit-the-same-300x175.png 300w\" sizes=\"(max-width: 740px) 100vw, 740px\" \/><\/a><\/p>\n<p>Push the changes to the remote repository.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Push-the-changes-to-the-remote-repository..png\"><img decoding=\"async\" class=\"alignnone wp-image-116476 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Push-the-changes-to-the-remote-repository..png\" alt=\"Push changes to remote repository.\" width=\"727\" height=\"117\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Push-the-changes-to-the-remote-repository..png 727w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Push-the-changes-to-the-remote-repository.-300x48.png 300w\" sizes=\"(max-width: 727px) 100vw, 727px\" \/><\/a><\/p>\n<p>Switch to the Master branch and click on <strong>Branch =&gt;Merge into the current branch.<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Merge-into-current-branch.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116477\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Merge-into-current-branch.png\" alt=\"Merge into current branch\" width=\"641\" height=\"454\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Merge-into-current-branch.png 641w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Merge-into-current-branch-300x212.png 300w\" sizes=\"(max-width: 641px) 100vw, 641px\" \/><\/a><\/p>\n<p>Select the <strong>Feature branch<\/strong> which is the source branch. Click on the <strong>Merge button<\/strong>.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Select-the-feature-branch.png\"><img decoding=\"async\" class=\"alignnone wp-image-116478 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Select-the-feature-branch.png\" alt=\"Merge feature into master\" width=\"563\" height=\"396\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Select-the-feature-branch.png 563w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Select-the-feature-branch-300x211.png 300w\" sizes=\"(max-width: 563px) 100vw, 563px\" \/><\/a><\/p>\n<p>Once the changes are merged into the master branch, you can then push the changes to the remote repository to be in sync.<\/p>\n<p>All the changes committed to branches in the local repository can be merged and pushed to the remote repository to be in sync.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Push2-Commits-to-the-origin-remote.png\"><img decoding=\"async\" class=\"alignnone wp-image-116479 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Push2-Commits-to-the-origin-remote.png\" alt=\"Push 2 Commits to the origin remote\" width=\"724\" height=\"109\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Push2-Commits-to-the-origin-remote.png 724w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Push2-Commits-to-the-origin-remote-300x45.png 300w\" sizes=\"(max-width: 724px) 100vw, 724px\" \/><\/a><\/p>\n<h3>Resolving Conflicts<\/h3>\n<p>There could also be a scenario where the changes have been committed to a file in the remote repository and also a change to the same file locally. In this case, the conflicts would be seen and would need to be resolved to have both the remote and local repository to be in sync.<\/p>\n<p><strong>Further Reading =&gt; <a href=\"https:\/\/www.softwaretestinghelp.com\/github-packages\/\">A Complete Guide on GitHub Packages<\/a><\/strong><\/p>\n<p><strong>Remote repository changes committed in the Master branch<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Remote-repository-changes-committed-in-master-branch.png\"><img decoding=\"async\" class=\"alignnone wp-image-116480 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Remote-repository-changes-committed-in-master-branch.png\" alt=\"Remote repository changes committed in master branch\" width=\"740\" height=\"233\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Remote-repository-changes-committed-in-master-branch.png 740w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Remote-repository-changes-committed-in-master-branch-300x94.png 300w\" sizes=\"(max-width: 740px) 100vw, 740px\" \/><\/a><\/p>\n<p><strong>Local repository changes committed in the master branch<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Local-repository-changes-committed-in-master-branch.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116481\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Local-repository-changes-committed-in-master-branch.png\" alt=\"Local repository changes committed in master branch\" width=\"604\" height=\"191\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Local-repository-changes-committed-in-master-branch.png 604w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Local-repository-changes-committed-in-master-branch-300x95.png 300w\" sizes=\"(max-width: 604px) 100vw, 604px\" \/><\/a><\/p>\n<p>As the changes are committed to the local repository, you can now push the changes to the remote repository. The conflicts will be seen while doing this. Click on <strong>Push origin.<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Push-origin-1.png\"><img decoding=\"async\" class=\"alignnone wp-image-116484 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Push-origin-1.png\" alt=\"Push 1 commit to the Origin Remote\" width=\"718\" height=\"110\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Push-origin-1.png 718w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Push-origin-1-300x46.png 300w\" sizes=\"(max-width: 718px) 100vw, 718px\" \/><\/a><\/p>\n<p>The following message would appear as there are changes in the remote repository to the same file. Click on <strong>Fetch.<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Fetch.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116485\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Fetch.png\" alt=\"Click on Fetch\" width=\"724\" height=\"237\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Fetch.png 724w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Click-on-Fetch-300x98.png 300w\" sizes=\"(max-width: 724px) 100vw, 724px\" \/><\/a><\/p>\n<p>Now click on <strong>Pull origin.<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Pull1-commit-from-the-origin-remote.png\"><img decoding=\"async\" class=\"alignnone wp-image-116486 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Pull1-commit-from-the-origin-remote.png\" alt=\"Pull Origin\" width=\"734\" height=\"134\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Pull1-commit-from-the-origin-remote.png 734w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Pull1-commit-from-the-origin-remote-300x55.png 300w\" sizes=\"(max-width: 734px) 100vw, 734px\" \/><\/a><\/p>\n<p>In the screen that comes up, you can open the file in your editor and resolve the conflicts. In this case, we are opening the file in explorer and resolving the conflicts.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Open-with-default-program.png\"><img decoding=\"async\" class=\"alignnone wp-image-116487 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Open-with-default-program.png\" alt=\"Resolve conflicts\" width=\"740\" height=\"296\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Open-with-default-program.png 740w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Open-with-default-program-300x120.png 300w\" sizes=\"(max-width: 740px) 100vw, 740px\" \/><\/a><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/README.md_.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116488\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/README.md_.png\" alt=\"README.md\" width=\"609\" height=\"254\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/README.md_.png 609w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/README.md_-300x125.png 300w\" sizes=\"(max-width: 609px) 100vw, 609px\" \/><\/a><\/p>\n<p>Fix all of the conflicts by retaining the appropriate content and removing the others with markers. Once the conflicts are resolved, you can commit the merge.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/commit-the-merge.png\"><img decoding=\"async\" class=\"alignnone wp-image-116489 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/commit-the-merge.png\" alt=\"Commit Merge\" width=\"604\" height=\"306\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/commit-the-merge.png 604w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/commit-the-merge-300x152.png 300w\" sizes=\"(max-width: 604px) 100vw, 604px\" \/><\/a><\/p>\n<p>Now push the changes back to the remote repository. The local and remote repository is now in sync. As the changes have been done on one branch you can then create a Pull Request to merge the changes to the other branches.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Push2-Commits-to-the-origin-remote-1.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-116490\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Push2-Commits-to-the-origin-remote-1.png\" alt=\"Push2 Commits to the origin remote\" width=\"724\" height=\"109\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Push2-Commits-to-the-origin-remote-1.png 724w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Push2-Commits-to-the-origin-remote-1-300x45.png 300w\" sizes=\"(max-width: 724px) 100vw, 724px\" \/><\/a><\/p>\n<h3>Looking At History<\/h3>\n<p>You can also look at the history of changes done so far to the repository. Toggle to the <strong>History tab<\/strong>.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Looking-at-History.png\"><img decoding=\"async\" class=\"alignnone wp-image-116491 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Looking-at-History.png\" alt=\"History Tab\" width=\"740\" height=\"252\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Looking-at-History.png 740w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Looking-at-History-300x102.png 300w\" sizes=\"(max-width: 740px) 100vw, 740px\" \/><\/a><\/p>\n<h3>Comparing Branches<\/h3>\n<p>Suppose you have done changes to a file in the master branch, you can then compare it with any of the other branches. Select <strong>Branch =&gt; Compare to branch<\/strong>.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Comparing-Branches.png\"><img decoding=\"async\" class=\"alignnone wp-image-116492 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Comparing-Branches.png\" alt=\"Comparing Branches\" width=\"346\" height=\"454\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Comparing-Branches.png 346w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Comparing-Branches-229x300.png 229w\" sizes=\"(max-width: 346px) 100vw, 346px\" \/><\/a><\/p>\n<p>Select the feature branch to look at the changes.<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Select-the-feature-branch-to-look-at-changes.png\"><img decoding=\"async\" class=\"alignnone wp-image-116493 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Select-the-feature-branch-to-look-at-changes.png\" alt=\"Select Feature Branch\" width=\"740\" height=\"237\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Select-the-feature-branch-to-look-at-changes.png 740w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2020\/01\/Select-the-feature-branch-to-look-at-changes-300x96.png 300w\" sizes=\"(max-width: 740px) 100vw, 740px\" \/><\/a><\/p>\n<h2>Conclusion<\/h2>\n<p>Though the use of Git commands from the command line is great, we saw in this GitHub Desktop tutorial, how a great Git Client like GitHub Desktop with a good user interface can ease the developer\u2019s work while working with the local and remote repositories.<\/p>\n<p>In the upcoming tutorial, we will look at another <a href=\"https:\/\/www.softwaretestinghelp.com\/tortoisegit-tutorial\/\">Git client interface Tortoise Git<\/a> that integrates with the Windows Explorer Shell.<\/p>\n<p><strong>=&gt; <a href=\"https:\/\/www.softwaretestinghelp.com\/github-tutorial\/\">Watch Out The Simple GitHub Training Series Here.<\/a><\/strong><\/p>\n\r\n\t\t\t<div id=\"daexthefup-container\"\r\n\t\t\t\tclass=\"daexthefup-container daexthefup-layout-stacked daexthefup-alignment-center\"\r\n\t\t\t\tdata-post-id=\"116407\">\r\n\r\n\t\t\t\t<div class=\"daexthefup-feedback\">\r\n\t\t\t\t\t<div class=\"daexthefup-text\">\r\n\t\t\t\t\t\t<h3 class=\"daexthefup-title\">Was this helpful?<\/h3>\r\n\t\t\t\t\t<\/div>\r\n\t\t\t\t\t<div class=\"daexthefup-buttons-container\">\r\n\t\t\t\t\t\t<div class=\"daexthefup-buttons\">\r\n\t\t\t\t\t\t\t\r\n\t\t\t<div class=\"daexthefup-yes daexthefup-button daexthefup-button-type-icon\" data-value=\"1\">\r\n\t\t\t\t\r\n                <svg>\r\n                    <defs>\r\n                        <style>.thumb-up-cls-1{fill:#c9c9c9;}.thumb-up-cls-2{fill:#e1e1e1;}.thumb-up-cls-3{fill:#676767;}<\/style>\r\n                    <\/defs>\r\n                    <g id=\"thumb_up\">\r\n                        <path class=\"thumb-up-cls-2 daexthefup-icon-circle\" d=\"m24,3c11.58,0,21,9.42,21,21s-9.42,21-21,21S3,35.58,3,24,12.42,3,24,3m0-1C11.85,2,2,11.85,2,24s9.85,22,22,22,22-9.85,22-22S36.15,2,24,2h0Z\" \/>\r\n                        <g>\r\n                            <rect class=\"thumb-up-cls-3 daexthefup-icon-secondary-color\" x=\"10\" y=\"20\" width=\"6\" height=\"15\" rx=\"1.5\" ry=\"1.5\" \/>\r\n                            <path class=\"thumb-up-cls-1 daexthefup-icon-primary-color\" d=\"m30.57,9.06l-.49-.1c-.81-.17-1.61.35-1.78,1.16l-5.3,11.74c-.17.81,3.16,1.61,3.97,1.78l1.96.41c.81.17,1.61-.35,1.78-1.16l2.18-10.27c.34-1.61-.7-3.21-2.31-3.56Z\" \/>\r\n                            <path class=\"thumb-up-cls-1 daexthefup-icon-primary-color\" d=\"m38.17,20h-18.67c-.83,0-1.5.67-1.5,1.5v12c0,.83.67,1.5,1.5,1.5h16.27c.71,0,1.33-.5,1.47-1.21l2.4-12c.19-.93-.53-1.8-1.47-1.8Z\" \/>\r\n                        <\/g>\r\n                    <\/g>\r\n                <\/svg>\t\t\t<\/div>\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t<div class=\"daexthefup-no daexthefup-button daexthefup-button-type-icon\" data-value=\"0\">\r\n\t\t\t\t\r\n                <svg>\r\n                    <defs>\r\n                        <style>.thumb-down-cls-1{fill:#c9c9c9;}.thumb-down-cls-2{fill:#e1e1e1;}.thumb-down-cls-3{fill:#676767;}<\/style>\r\n                    <\/defs>\r\n                    <g id=\"thumb_down\">\r\n                        <path class=\"thumb-down-cls-2 daexthefup-icon-circle\" d=\"m24,3c11.58,0,21,9.42,21,21s-9.42,21-21,21S3,35.58,3,24,12.42,3,24,3m0-1C11.85,2,2,11.85,2,24s9.85,22,22,22,22-9.85,22-22S36.15,2,24,2h0Z\" \/>\r\n                        <g>\r\n                            <rect class=\"thumb-down-cls-3 daexthefup-icon-secondary-color\" x=\"10\" y=\"13\" width=\"6\" height=\"15\" rx=\"1.5\" ry=\"1.5\" \/>\r\n                            <path class=\"thumb-down-cls-1 daexthefup-icon-primary-color\" d=\"m30.57,38.94l-.49.1c-.81.17-1.61-.35-1.78-1.16l-5.3-11.74c-.17-.81,3.16-1.61,3.97-1.78l1.96-.41c.81-.17,1.61.35,1.78,1.16l2.18,10.27c.34,1.61-.7,3.21-2.31,3.56Z\" \/>\r\n                            <path class=\"thumb-down-cls-1 daexthefup-icon-primary-color\" d=\"m38.17,28h-18.67c-.83,0-1.5-.67-1.5-1.5v-12c0-.83.67-1.5,1.5-1.5h16.27c.71,0,1.33.5,1.47,1.21l2.4,12c.19.93-.53,1.8-1.47,1.8Z\" \/>\r\n                        <\/g>\r\n                    <\/g>\r\n                <\/svg>\t\t\t<\/div>\r\n\r\n\t\t\t\t\t\t\t\t\t<\/div>\r\n\t\t\t\t\t<\/div>\r\n\t\t\t\t<\/div>\r\n\r\n\t\t\t\t<div class=\"daexthefup-comment\">\r\n\t\t\t\t\t<div class=\"daexthefup-comment-top-container\">\r\n\t\t\t\t\t\t<label id=\"daexthefup-comment-label\" class=\"daexthefup-comment-label\"><\/label>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"daexthefup-comment-character-counter-container\">\r\n\t\t\t\t\t\t\t\t<div id=\"daexthefup-comment-character-counter-number\"\r\n\t\t\t\t\t\t\t\t\tclass=\"daexthefup-comment-character-counter-number\"><\/div>\r\n\t\t\t\t\t\t\t\t<div class=\"daexthefup-comment-character-counter-text\"><\/div>\r\n\t\t\t\t\t\t\t<\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\r\n\t\t\t\t\t<textarea id=\"daexthefup-comment-textarea\" class=\"daexthefup-comment-textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"Type your message\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"\r\n\t\t\t\t\t\t\t\t400\t\t\t\t\t\t\t\t\t\"><\/textarea>\r\n\t\t\t\t\t<div class=\"daexthefup-comment-buttons-container\">\r\n\t\t\t\t\t\t<button class=\"daexthefup-comment-submit daexthefup-button\">Submit<\/button>\r\n\t\t\t\t\t\t<button class=\"daexthefup-comment-cancel daexthefup-button\">Cancel<\/button>\r\n\t\t\t\t\t<\/div>\r\n\t\t\t\t<\/div>\r\n\r\n\t\t\t\t<div class=\"daexthefup-successful-submission-text\">Thanks for your feedback!<\/div>\r\n\r\n\t\t\t<\/div>\r\n\r\n\t\t\t","protected":false},"excerpt":{"rendered":"<p>This Tutorial Explains how to Download and use the GitHub Desktop to Collaborate With GitHub From Your Desktop for Efficient Version Control: As we all know, GitHub provides a website to host Git repositories. In our previous tutorials on GitHub, we have seen the developer\u2019s activities on versioning files mostly &#8230; <\/p>\n<p class=\"read-more-container\"><a title=\"GitHub Desktop Tutorial &#8211; Collaborate With GitHub From Your Desktop\" class=\"read-more button\" href=\"https:\/\/www.softwaretestinghelp.com\/github-desktop-tutorial\/#more-116407\" aria-label=\"Read more about GitHub Desktop Tutorial &#8211; Collaborate With GitHub From Your Desktop\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":117998,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_helpful_pro_status":1,"footnotes":""},"categories":[593],"tags":[],"class_list":{"0":"post-116407","1":"page","2":"type-page","3":"status-publish","4":"has-post-thumbnail","6":"category-github"},"acf":[],"_links":{"self":[{"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/pages\/116407","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/comments?post=116407"}],"version-history":[{"count":0,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/pages\/116407\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/media\/117998"}],"wp:attachment":[{"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/media?parent=116407"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/categories?post=116407"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/tags?post=116407"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}