Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7502523
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 29, 20262026-05-29T20:54:05+00:00 2026-05-29T20:54:05+00:00

I don’t know if I touch a delicate subject here, at least it doesn’t

  • 0

I don’t know if I touch a delicate subject here, at least it doesn’t seem to be easy…

There are many VCS out there, plenty more posts/blogs/… describing how efficient they are. And there are also many suggestions to remove stuff from the code when it isn’t needed (clean code). There are always sentences like “it doesn’t get lost anyway”, “you can always get back to it”, …

I can’t quite follow that. Let’s say there a few developers working on one particular project. New requirements appear on the scene resulting in creating, modifying and deleting code. And hopefully refactoring.

In reality it happens occasionally that a certain feature is required, then dropped and then re-added later. In other words there was code written already. That code got written during the “required” phase and got removed during the “not any more” phase. What happens in the “re-added” phase? Some may suggest to rewrite the code, but I don’t consider that an option here. Actually the “old” code might include fixes for problems that arose back then.

The project isn’t small, many classes, plenty of logic, maybe some personnel changes, you get the idea. IMHO it’s not fair to always expect from at least one developer to remember that there was code written and where it happened (including branch names).

Is there any support from a VCS to answer questions like

  • Where was a yet removed particular method and I only have a vague guess about its name?
  • I’m pretty sure that there was an if-statement right here, but what happened to it?
  • …

I don’t want to restrict this question to one VCS. It should be more of a general question. If anyone cares, we currently use Mercurial.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-29T20:54:06+00:00Added an answer on May 29, 2026 at 8:54 pm

    This is the kind of scenario best handled with:

    • many feature branches
    • one consolidation branch in which you are merging (or reverting if you don’t want anymore a feature merged) all the features that should make it for the next release, in order to perform integration tests.

    (as described in “What is a useful Branch Versioning Strategy?“)

    This is easier to do with DVCS (Mercurial, Git), in that you can easily merge/rebase/cherry-pick a set of commit from one branch to another, but also canceling commits you don’t want to see.


    Now about “finding stuff”:

    Since revisions in a DVCS tend to be smaller than in a CVCS, you end up with the “small things” isolated in their own commit that you can get back later and see if they have been merged or not.

    What is also easier with a DVCS is:

    • keeping a clear history with coherent change sets (since you can re-arrange commits, splitting them or merging them together), which improves the change of getting back a particular modification isolated in a well identified commit (and not mixed with other changes in the same revision),
    • finding a specific content within commits.
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Don't know how to google for such, but is there a way to query
Don't know what's wrong here, when I run the application it says Specified method
Don't know if it's I'm doing it wrong or if there's a bug (I
Don't know why I can't reply to people on here with only a small
Don't think there's much to say, here's my code for (int i = 0;
Don't know if there is a better way to do this, so that is
Don't really know how to formulate the title, but it should be pretty obvious
I don't know when to add to a dataset a tableadapter or a query
Don't know if I worded the question right, but basically what I want to
(Don't know if this is strictly on-topic, but I don't see any better Stack

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.