Skip to main content

Questions tagged [version-control]

A programming discipline for tracking, storing and retrieving revisions of source code.

Filter by
Sorted by
Tagged with
-1 votes
2 answers
835 views

Why does Meta (Facebook) use mono-repo in their source control? [closed]

Meta maintains all their code in a single repository and initially used Git. Due to performance issues attributed to the repo's size, they consulted Git's team, who suggested switching to a multi-repo ...
just_a_developer's user avatar
0 votes
2 answers
190 views

Source Control Design for Proprietary Logic which includes Obfuscation

Problem: There are proprietary algorithms that developers who are actively working on a project will need to call but they should not see the underlying logic. They need to be stored in an area of ...
Rudazzle's user avatar
  • 111
9 votes
3 answers
6k views

How should source code unit tests affect semantic versioning?

I recently started using Semantic Versioning. Due to conflicts with my previous versioning convention (which I created myself), I am very confused about versioning unit tests as part of the public API....
KhodeNima's user avatar
  • 225
9 votes
11 answers
7k views

Where to keep the code that I do not want in the main?

I made some changes that, after testing, I decided not to use for now. Thus I don't want them in the main branch. However, I don't want to discard them altogether (maybe I will need them later?) What ...
sds's user avatar
  • 861
2 votes
2 answers
359 views

Where to tag releases to achieve "build-once, deploy-everywhere" using GitFlow?

TL;DR: Using GitFlow, which commit do you tag to identify the build of your next release? If you tag the merge commit on main, you'll need to rebuild and deploy something you didn't test on QA (and ...
Kurt Bourbaki's user avatar
1 vote
1 answer
280 views

Git Branching and Merging Strategy for Feature-Oriented Release Process

We have multiple developers contributing to a project, using Git as our repository. We have a QA branch that matches our QA environment and a master branch that matches production. Features can be in ...
Lisa S's user avatar
  • 21
0 votes
2 answers
172 views

Is a 'base' file always necessary when doing a merge?

Are there any algorithms that can do or suggest merges without requiring the "base" file, the most recent common ancestor of the two file versions that we want to merge? Is a manual merge ...
yoyo_fun's user avatar
  • 2,297
1 vote
0 answers
79 views

Is there a name for this partially ordered versioning scheme?

Versions are on the form: x.y.z.[..] Where these letters are numbers and there are arbitrarily many of them. The first version is 1. The next one is 2. The only time when you branch out to the next ...
Guildenstern's user avatar
17 votes
6 answers
6k views

How do you manage your own comments on a foreign codebase?

A common scenario I have is this: I download a new codebase. In order to have me understand the code, I need to litter it with my own comments about what each section of code does. It seems ...
user3180's user avatar
  • 283
1 vote
0 answers
111 views

Design patterns for versioning steps across data/workflow pipelines?

I'm sure this has been touched upon by a number of questions, but I'm struggling on drawing the boundaries between code, data and configuration versions when working with a large DAG (think airflow or ...
MYK's user avatar
  • 343
0 votes
2 answers
223 views

If "others have modified components since you checked out the system", what would you do?

In Software Engineering by Pressman: The steps in continuous integration are: Check out the mainline system from the version management system into the developer's private workspace. Build the ...
Tim's user avatar
  • 5,485
1 vote
2 answers
109 views

What is the most efficient approach about dependencies versions?

Recently I had many problems opening old projects, which had all dependencies in package.json defined with ^ x.y.z. When I pull the code and run npm install the dependencies are installed but I will ...
Jancer Lima's user avatar
1 vote
1 answer
117 views

Strategy for deploying code internally and externally with common code base, but different functionality

For one of my current projects, written in Python, we would like to have two different versions: One for internal use, with all features enabled, and one for external use, with limited features. The ...
arc_lupus's user avatar
  • 121
4 votes
1 answer
337 views

How to label backwards incompatible changes which change the API but don't add a feature?

I have a project in which I'm the sole contributor, there isn't a stable API yet and I'm constantly refactoring code, but I still try to denote breaking changes whenever they do happen. Recently ...
Clara's user avatar
  • 53
0 votes
1 answer
2k views

Should tags be introduced on commits still in Pull Request branches outside of main/master branch?

Context: I am working on a project in which people use tags on commits yet in branches waiting on the Pull Requests queue of GitHub. This means they are non-merged to the main branch yet. The problem ...
Pedro Delfino's user avatar
2 votes
0 answers
593 views

Is the difference between "changesets" and "snapshots" in version control primarily a space-time tradeoff?

There are many version control systems out there, and they tend to use one of the following models to store separate versions of a repository: Snapshots - each version of your repository is stored in ...
Lou's user avatar
  • 346
3 votes
1 answer
317 views

I need help understanding a seemingly broken Git release flow

First some context. Working in teams which use a CI environment, many people will know the typical Gitflow release process. Without going into too much political detail, the company I currently work ...
ChrisK's user avatar
  • 53
3 votes
2 answers
317 views

Is it logically possible to consistently name commits in a VCS using an ordered sequence?

Imagine you're creating a completely new version control system, like Git, Mercurial, SVN etc. from scratch. Rather than identifying commits by SHA hashes, you identify them using an ordered sequence ...
Lou's user avatar
  • 346
0 votes
2 answers
156 views

Version control for modification of a part of another project used in my project

There is somebody else's project (A), a part of which (foo.h) I want to use in my project (B) with some modifications. The modifications make sense only in the context of B, so I can copy foo.h into B ...
user417469's user avatar
3 votes
2 answers
436 views

How to keep attribution in version control (git) when one author moves another author's code?

Sometimes code will need to be moved. A common example is some logic that exists in a controller needs to get moved to a helper class so it can be called from outside of that controller. So someone ...
chiliNUT's user avatar
  • 180
2 votes
0 answers
751 views

Better alternative for cherry picking across heavily diverged branches

I'm currently trying to update the linux kernel used in a xilinx SoC, my company has an internal repo/fork of xilinx open source linux with a bunch of kernel drivers for our custom hardware & ...
Skye's user avatar
  • 29
0 votes
3 answers
153 views

Merging Python2.7 code to its ported Python3.9 version

I am working on a Django based project that is version controlled with SVN. My main objective is porting it from Python2.7 to Python3.9. Whilst I port the project, my team brought some updates, now I ...
Mehmet Eren BULUT's user avatar
-3 votes
1 answer
96 views

Applying a file diff to a new file [closed]

Suppose I have file a.txt, b.txt and c.txt: a.txt: Hello, I like cake. b.txt: Hello, I like turtles. c.txt: go away, I don't like you I suspect the difference between a.txt and b.txt is ...
user32882's user avatar
  • 267
-2 votes
4 answers
312 views

How can I use git effectively when I'm just starting a project and working on many parts at once?

I've been having the problem that at the beginning of a new project, I'm likely to switch frequently between tasks in a way that (to me) doesn't seem very conducive to small single-concern commits. ...
Christopher Shroba's user avatar
6 votes
3 answers
1k views

Mixing server and client code in monorepo

To date, we have implemented a multi-repo approach in which each project, or for larger projects, each tier, has its own repo. Code is written in Typescript, Javascript, C#, PowerShell and T-SQL. ...
TimTheEnchanter's user avatar
0 votes
2 answers
219 views

How to version modules that depend on different framework versions

I work as a Website developer. We use a framework for building the backend of our sites. This framework recently released a new major version with lots of breaking changes. We have some sites using ...
Patrick Hollweck's user avatar
5 votes
4 answers
1k views

With Kent Beck's "test && commit || revert" (TCR), do you skip the "red" of "red, green, refactor"?

If you haven't heard of Kent Beck's TCR, it can be summarized with this: any time your tests go green, you commit; anytime your tests go red, you git reset --hard. This post is about how to practice ...
Daniel Kaplan's user avatar
0 votes
2 answers
187 views

What is the current definition of continuous integration?

It seems that there are at least two possible definitions of continuous integration: Frequent merging of a codebase to a common codebase (e.g. daily merge to the main branch of a VCS server). ...
Géry Ogam's user avatar
-1 votes
2 answers
292 views

Proper ways to manage evolving inter-communicated microservices APIs?

I'm working on a big C# application that is currently under development so we have some room for structural refactoring. The application is divided into 10 microservices, which some of them ...
andresantacruz's user avatar
7 votes
1 answer
336 views

How do you use version control systems while you are in a long design spike phase?

In some recent projects, I found myself having some longer spike phases in which I build many cheap prototypes and explore different design decisions, long before I would consider my code of ...
Christoph Thiede's user avatar
6 votes
6 answers
744 views

Is there any way of applying a code formatter to a active codebase that doesn't lead to suffering?

Often one wants to apply a code-formatter, like Black, or JuliaFormatter to a existing code-base. One where standards have tried to be followed but a few things might have slipped in. Once you have ...
Frames Catherine White's user avatar
5 votes
3 answers
452 views

Reasons behind conventions around what goes into source control?

I've come across some apparently-conflicting patterns of behaviour. I'd like to understand why they each exist. I'll call them "conventions" for the sake of simplicity, though I'm not sure ...
OutstandingBill's user avatar
3 votes
3 answers
627 views

Is checking dependencies into source control worth the cost?

For the last several years, I've been checking all dependencies of my team's nodejs project into source control. At first, we stored the archives of all dependencies using yarn v1's offline mirror, ...
SirensOfTitan's user avatar
3 votes
1 answer
2k views

Strategies to organize multiple projects which may reference each other and managed by different teams in Git?

First actually I don't think Git is a specific involved tool here, it can be any other Source/Version Control tool (TFS, SVN, ...). The point here is how to deal with the scenario in which I have ...
Hopeless's user avatar
  • 159
0 votes
0 answers
137 views

How much should we archive for reproducible builds?

A few alternative twists on the question title to contextualize further: What to archive of the "sources" for a given software build? Should I include all transitive packages in my ...
Martin Ba's user avatar
  • 7,627
0 votes
2 answers
1k views

Architecting project into multiple source control repositories

I'm doing some work with my team to refactor/rearchitect some parts of our existing codebase which consists of two separate Django apps hosted in one common project repository. We're starting work on ...
Nick Gotch's user avatar
-1 votes
1 answer
97 views

Version control organization for large .NET solutions

I'm trying to come up with a better way to organize my C# projects on SVN. The .NET solution for my main GUI has about 28 class library projects. These libraries fall into two categories. Some of them ...
gunnerone's user avatar
  • 107
2 votes
4 answers
637 views

How can I keep track of which existing lines of code/text have passed some new review?

Firstly, this is a really tough topic to do searches for because you get a wealth of information on “code review”, which is different from what I’m referring to here. That normally refers to ...
Deep Thought's user avatar
2 votes
0 answers
283 views

Build & deploy individual apps from a monorepo

My Proposed Monorepo Architecture This layout is what I've come up with from reading through tons of articles and being convinced that Nx suits many of our needs where I work. The layout works fine ...
Mazzone's user avatar
  • 121
10 votes
2 answers
2k views

Should Visual Studio specific files be excluded from version control?

I work on a number of code projects, some open source and some not. Many of these projects are intended to be cross-platform, most often running on either Linux (my natural habitat) or Windows and ...
Edward's user avatar
  • 214
3 votes
1 answer
1k views

How to setup our codebase for efficient code sharing and development?

Our situation At first, our company had 1 product. Custom hardware with firmware we wrote ourselves. Now more projects are starting to be added. Many can reuse most of the components of our first ...
Kodiak's user avatar
  • 105
6 votes
1 answer
2k views

Confused on Git workflow and role of dev environment/branch

I work in web development and the team I work on is growing so I see the need to hammer out a more formal Git workflow. We have a process down that is working for now but it's starting to cause more ...
Vecta's user avatar
  • 177
1 vote
1 answer
184 views

Distribute commit files between different repositories

I am not sure if what I'm asking is even possible (or desirable, for that matter), but we were wondering what would be the best way to handle SQL changes to a Database schema, when this schema is ...
Nelladel's user avatar
-2 votes
1 answer
128 views

Best Git branching strategy plan CI/CD for kafka platform development

I'm working on a Kafka platform development project, the team is keeping all the code in master with no branches, next moving to QA, Stg, Prod. If in between these stages if they don't need any ...
Pramod's user avatar
  • 1
9 votes
2 answers
731 views

Disadvantages for having completely different codebases in different git branches

One senior member of my team setup a new git repository for our product we are working on, since we are migrating from SVN to git. Our product consists of different software components that are ...
deflox's user avatar
  • 111
19 votes
2 answers
22k views

Should frontend and backend be on separate GitHub repos?

We are new to git, but this fundamental question needs to be sorted out before we can begin. It's two devs who have been working standalone for a while. Now the time has come to adopt git (at the ...
Firsh - justifiedgrid.com's user avatar
52 votes
11 answers
10k views

How can a developer overcome their fear of merge conflicts? [closed]

I'm a beginner at collaborative development, I started learning about merge conflicts. And I have this question. Is it possible for a developer to deliberately postpone merging because he doesn't want ...
YsfEss's user avatar
  • 531
-3 votes
1 answer
100 views

Reverting commits after merge

I am working on dev branch and I merged dev into master so all the commits not appear on master but I am not very confident about some thing. Should I do pull request and then merge or this way is ...
Alan Ajax's user avatar
3 votes
2 answers
169 views

"Support branches" and major tech update

Our software product promises to support major releases with bug fixes for X years after the release, meaning that in our git repository, we keep permanent "support branches" for every major ...
Andreas T's user avatar
  • 141
-2 votes
1 answer
141 views

First time teamwork (PHP): version control and continuous integration?

A colleague and I are going to be working together on a single project for the first time. This raises a few technical questions for me. Like how. I think a version control system is a must now, if it ...
JaredNinja's user avatar

1
2 3 4 5
20