Easy Beginners Guide to Git and GitHub for FileMaker Developers

Guide Part 1 - Updated 8/19/26 - alex seidler

I received feedback from the Claris Forums pointing out the fact that the article has a bias towards developing on a Windows machine.  In truth, I do tend to favor a Windows machine (although use a Mac for Xcode/iOS Mobile Dev/Swift/etc).  And they were right!

Luckily, after installation the terminal commands are fairly similar between the two.  But I added some quick revisions to get everyone up off the ground and running on Mac.  We love Apple over here!  We are FileMaker developers, after all.

Edit: This is now a 2 part guide due to user request and the complexity of Git/GitHub.
View our PART 2 here.


Hi, it’s me – Alex from RGC Data. I wrote this whole thing out of equal parts excitement and sheer “why is Git like this” frustration. It’s a guide made by a developer, for developers… or hobbyists… or gardeners… honestly anyone who has ever looked at Git and thought, “surely this could be simpler.” Git and GitHub feel confusing at first, but once a few pieces click together, it’s not nearly as scary. And with agentic workflows helping us out, it gets even easier.

To follow along, you’ll need to get cozy with your terminal or PowerShell. On Windows, hit Ctrl + R, type cmd, and press Enter. On Mac, pop open Terminal. That’s your new spaceship cockpit.

The fun part? Agentic coding models -> Claude, Codex, Gemini <- are absolute wizards with Markdown files and CLI commands. They thrive in this environment. But it still helps to know the basics of how your terminal talks to GitHub so you’re not flying blind.

To make life easier, I bundled everything together: an offline HTML version of this guide (yes, intentionally HTML), plus a ready‑to‑use agentic Markdown file. Scroll down to grab both. If this helps you, please tell me! Drop a note on the Claris forums, send suggestions, corrections, or friendly roasting – I wrote this last night, so I’m sure something needs polishing. I’ll keep refining and updating the reference materials over time. And of course, you can always reach out if you want consulting, collaboration, or just a conversation with another dev who loves this stuff.

Most importantly: I’m human. I make mistakes. If you spot anything off, email me at alex@rgcdata.com or ping me on the Claris forums. I want this to be accurate, helpful, and genuinely useful for the community.

Alright -> enough preamble. Let’s jump in.

A practical guide for the Claris community

From a project folder on your computer to a safe private repository on GitHub.

If Git and GitHub have felt harder than they should, that is understandable. There are several pieces with very similar names, and GitHub has more than one way to create something. This guide has separate setup notes for Windows and Mac, then brings everyone back to the same basic Git workflow. Once Git is installed, the commands are almost the same.

Start with the downloads
1. Downloads

What needs to be installed?

For most React, TypeScript, FileMaker integration, and web projects, you only need Git. GitHub CLI is useful but optional. Pick your computer below, do that setup, then continue with the same steps as everyone else.

Download Git for Windows

Use the official download page:

Download Git for Windows

During the installer, the normal defaults are fine for a first installation. Git for Windows includes Git Bash and normally includes Git Credential Manager, which helps Windows remember your GitHub login without putting a password in your project.

After installation, close and reopen PowerShell and check:

git --version

Install Git on Mac

On a Mac, open Terminal and check whether Git is already installed:

git --version

If macOS opens a prompt asking you to install Command Line Developer Tools, say yes. That is normal. Those tools include Git and a few other Apple developer utilities that Terminal needs for this kind of work.

If the prompt does not appear, you can ask macOS for it directly:

xcode-select --install

If you prefer using Homebrew, you can also install Git that way:

brew install git

If brew is not found, that just means Homebrew is not installed yet. You can still use Apple's Command Line Developer Tools and move on.

Git for Mac options

Optional: GitHub CLI on Windows

GitHub CLI adds the gh command. It can check your login, help create repositories, and open pull requests from a terminal.

Download GitHub CLI

On Windows, you can install it from PowerShell:

winget install --id GitHub.cli -e --source winget

Check it after reopening PowerShell:

gh --version

Optional: GitHub CLI on Mac

If you use Homebrew, GitHub CLI is simple to install:

brew install gh

Check it after reopening Terminal:

gh --version

If you do not want to use Homebrew, download the Mac installer from the GitHub CLI website instead.

Download GitHub CLI

Node.js, npm, and pnpm are separate JavaScript tools. If you already build React apps, you probably have what you need. Check with node --version, npm --version, and pnpm --version.

2. Accounts and login

Keep your credentials out of the project

GitHub does not accept your normal account password for Git pushes. The easiest beginner setup is to use HTTPS and let Git Credential Manager or GitHub CLI open a browser sign-in.

If you installed GitHub CLI, run:

gh auth login

Choose GitHub.com, HTTPS, and browser authentication. When it finishes, check which account is active:

gh auth status

If you use both a personal account and a company account on GitHub.com, authenticate each account when needed and use:

gh auth switch
Never send credentials to an AI agent. Do not paste passwords, personal access tokens, private SSH keys, database passwords, or real .env files into a chat. An agent can help you run the commands, but you should complete the sign-in yourself on your computer.
3. New repository, not a GitHub App

Create the online home for your project

A repository is the place where your project files and Git history live on GitHub. A GitHub App is a separate type of integration that acts on behalf of software. For the purpose of putting your project on GitHub, you want a repository.

Create a repository on the GitHub website

  1. Go to github.com/new and sign in.
  2. Use the Owner menu to select your personal account or the company organization where the project belongs.
  3. Enter a repository name, such as openbridge. Use a short name with letters, numbers, hyphens, underscores, or periods.
  4. Add a short description if you like.
  5. Choose Private unless you have made a deliberate decision to publish the project.
  6. If you are uploading an existing project folder, leave Add a README, Add .gitignore, and Choose a license unchecked for now. Your local project may already have these files, and starting the online repository with extra files can create an unnecessary merge conflict.
  7. Click Create repository.

After GitHub creates the repository, leave that browser page open. The Quick Setup area shows the repository URL that you will connect to your local folder.

Small but important distinction: the plus menu on GitHub includes several creation options. Choose New repository. Do not choose New GitHub App, New OAuth App, or another application option.
4. Prepare the local folder

Check what you are about to upload

Keep one project per folder. Before you connect it to GitHub, make sure the folder does not contain passwords, private keys, customer data, database exports, or a large generated folder such as node_modules.

Open a terminal in the project folder

On Windows, open the project folder in File Explorer, click the address bar, type powershell, and press Enter. Or use:

cd "C:\path\to\your\project"

On Mac, open Terminal and use the project folder path. If the folder is on your Desktop, it may look like this:

cd "/Users/yourname/Desktop/Your Project"

Check or create a .gitignore

For a typical React or Vite project, the important entries look like this:

node_modules/
dist/
build/
.env
.env.*
!.env.example
*.pem
*.key

It is fine to keep an .env.example file with empty example values and notes about what the project needs. Do not copy real values into it.

Run the project checks

pnpm install
pnpm build
pnpm lint

Use the commands listed in your own package.json if they are different. The point is to know that the project works before the first upload.

5. Upload the project

Initialize, commit, connect, and push

Run these commands from the project folder. If the folder is already a Git repository, git init is harmless and simply confirms it.

git init -b main
git config user.name "Your Name"
git config user.email "your-email@example.com"
git status
git add .
git status
git commit -m "Initial project version"

Now copy the HTTPS URL from your new GitHub repository. It should look like this:

https://github.com/OWNER/REPOSITORY.git

Connect your local folder to that online repository:

git remote add origin https://github.com/OWNER/REPOSITORY.git
git remote -v

If your project already has a remote called origin, use this instead:

git remote set-url origin https://github.com/OWNER/REPOSITORY.git
git remote -v

Finally, send the local main branch to GitHub:

git push -u origin main

The -u connects your local branch to the online branch so later you can usually type only git push. If Git asks you to sign in, complete the browser or credential-manager prompt. Do not type your GitHub account password into a terminal prompt.

Read the second git status before committing. If you see a private key, password file, customer export, .env file, or anything you did not intend to share, stop. Update .gitignore, remove the file from staging with git restore --staged path/to/file, and inspect again.
6. Keep it updated

What you will normally do after the first upload

Git is most useful when you make small, understandable checkpoints instead of waiting until the end of a large project. A commit is a saved point in the history. It is not a backup by itself until you push it to GitHub.

git status
git pull --rebase
# make and test your changes
git add .
git diff --cached
git commit -m "Describe the change"
git push

Examples of good commit messages include Add attendee search, Fix FileMaker connection error, and Update conference schedule. Git history is much easier to understand when each commit says what changed.

7. Permissions and teamwork

Give people access without making everything public

A private repository is visible only to its owner and the people or teams granted access. To add somebody, open the repository on GitHub and go to Settings, then Collaborators and teams or Manage access. Invite their GitHub username or email and choose the appropriate role.

  • Read is enough to view and clone a repository.
  • Write allows a person to push changes and open pull requests. This is usually the right role for a developer who needs to contribute.
  • Maintain is for project management without the most sensitive administrative actions.
  • Admin should be limited to people who need to manage access, repository settings, or deletion.

For an organization-owned project, the organization owner or a repository administrator may need to add people to a team or repository. Company policies can also limit who may create repositories or change a repository from private to public.

Use a branch for each piece of work

Two people can work on the same project at the same time if they work in separate branches. Keep main in a reasonably working state, then create a branch for a feature or fix:

git switch main
git pull --rebase
git switch -c feature/short-description
# edit and test
git add .
git commit -m "Add short description"
git push -u origin feature/short-description

Open a pull request on GitHub, review the changes, and merge it into main. If two people edit the same lines, Git may report a conflict. That is not a disaster. It means Git needs a human decision about which version, or combination of versions, should remain.

8. Work with AI agents

Let the agent help with the work, not with your passwords

Folder-based agents such as Codex can inspect a project, edit files, run checks, and explain a change. Put an AGENTS.md file in the project root so the agent knows the project rules. The companion file packaged with this guide is designed to be copied into a project and edited for that project.

A sensible agent workflow is:

  1. Read AGENTS.md, the README, and the current Git status.
  2. Confirm the requested work and create a task branch.
  3. Make the smallest coherent change.
  4. Run the relevant tests, lint, and build commands.
  5. Show the changed files and the diff.
  6. Commit or push only when the project owner explicitly asks.

Do not give an agent a private key, a GitHub token, a database password, customer data, or a production .env file. The agent can tell you exactly what to type after you authenticate locally.

9. Privacy and release

Make a project public only after a deliberate review

Before changing a repository from private to public, review the current files and the Git history. Removing a secret from the latest version does not remove it from older commits. If a credential was ever committed, rotate it first and clean the history before publication.

For client work, integrations, internal tools, and projects with real data, keeping the repository private is usually the better default. Public code should have a clear README, a license where appropriate, and no private customer or infrastructure details.

Download the companion files

Keep the guide and agent instructions together.

Download the offline HTML guide, the Elementor snippet, the reusable AGENTS.md file, and the README package. This link is a placeholder for the public GitHub release.

Need help?

We would be glad to hear about your project.

RGC Data LLC works with Claris FileMaker integrations and a wide range of connected systems. We handle FileMaker database work, web applications, React and TypeScript projects, WordPress, native and cross-platform mobile apps, QuickBooks, Salesforce, and other API-based systems.

If you are not sure how the pieces should fit together, we are happy to listen, talk through the project, and see whether we can be useful.

Request a quote Email Alex
Further reading

Official links

About the author

This guide was written by Alex Seidler of RGC Data LLC.

alex@rgcdata.com · rgcdata.com

RGC Data handles FileMaker integrations, FileMaker database work, web development, React and TypeScript applications, native and cross-platform mobile apps, WordPress, QuickBooks, Salesforce, and other API integrations.

Need help? We would love to discuss your project and see whether we can assist.

Share the Post:

Related Posts

Need a solution?

If you’re looking to connect FileMaker with WordPress or streamline a workflow, we can help. Drop your name and email and we’ll get in touch to talk through your project.