Intro
I have written about the power of pulling in the context of productivity and efficiency derived from the Lean Manufacturing methodology. However, Pull is also a concept used in Version Control tools like Git. In this post, I will explore the main Git commands and demonstrate how these practices can improve alignment and internal communication in an organization.
Pull
Let’s imagine the Marketing Team of Acme Inc. (creative, I know). As part of the yearly OKR development, the team aimed to increase website traffic by 20%. We call the act of requesting the updated goal from the management Pull. Like pulling code from a remote source to a local machine, the team pulls external data to stay up-to-date and aligned with the company's goals.
Branch
The team now deviates from the original goal, brainstorms to come up with the right key results, and works on different strategies. For example, they might add key results (KRs), such as increasing organic traffic to marketing content pages, improving email campaign conversion rates, or enhancing paid campaign performance.
Branching is taking the original goal and working on it internally. Much like a tree branch that grows from the trunk, a code branch and the team's work stem from the original version.
Commit
Commit is the first actual work done, usually at a branch. It could be a function or a line of code, or, in our example, a new blog post, a marketing plan for paid campaigns, or engaging social media content.
Much like organizational data, committing does not equal communicating. The team can write a new blog post without anyone in the company knowing about it. If the work stops here, that’s where silos are created, and alignment starts to crack.
Push
As the team has some Key Results (KRs) and work ready (commits), they Push it. It’s still a side project (a Branch), but it’s now visible for feedback from other team members.
This is like a developer pushing changes so others can view them without affecting the main branch, representing the entire OKR work plan. Pushing ensures progress is visible and can be improved through collaboration.
Note that Pushing is proactive. It’s more than sending an email or Slack message; it’s about ensuring the right people can access and provide feedback through meetings, offline communication, and live updates. Another step is needed to close the loop between the overarching goal and the KRs.

Merge
We expect the Marketing Team to integrate their defined KRs and actions into the original company OKR work plan. When doing so, they actively ask for feedback and approval to ensure alignment. This process is also called a Pull Request.
During this process, they receive essential feedback: their plan for paid campaigns exceeds the budget allocation. Management suggests reducing the spending there and focusing more on SEO and organic traffic.
After making these changes, they Merge their plans into the company OKR work plan.

The next step is to stay updated with the latest decisions and ongoing activities, right? Pulling is our solution. And the cycle continues.

Summary
The concepts behind managing version control using Git—such as Pull, Branch, and Merge—can significantly improve internal alignment and communication within an organization. By creating goals and projects similar to how code is managed, teams can stay updated, collaborate effectively, and integrate feedback seamlessly. Moreover, this approach helps prevent silos and promotes alignment.