Comments (7)
I am not sure that duplicating the folder and then making it a branch will allow git-tfs to import correctly.
I would suggest to try to git tfs clone --branches=none
with the old location of your dev folder if your are only interested
of importing the dev folder including its history.
from git-tfs.
I tried running the command you suggested on the original and noticed that when it finished it did not have all of the subfolders under our Dev folder. In looking at the log file, I see thousands of lines of "get" logs, then at some point about half way through, the "get" changed to "D" in the log statement. The first statement after this change reads:
2023-06-19 10:47:46.9016 [Debug] D Dirs_Release.props
Then every line after that includes the "D" and a file path to files in the Dev folder. I noticed in the local repo, it appears that the files with "D" in the log were not pulled into my repo. Again, approximately half the files had "D" in the log output so I presume that approximately half my files were not cloned.
I'm quite confused as to what's causing this.
from git-tfs.
I assume (but I am not sure) that the D stand for deleted. You should see the changeset which is imported. Maybe look at the history and try to figure out what is done there in TFS?
from git-tfs.
The files are not deleted. They are still in TFS and they are part of our Dev folder. It just acts like Git TFS skips all of those files but I don't know why. I'm not convinced the "D" means anything is deleted - to me it is just not "getting" anything more from TFS.
I was able to clone my entire Dev folder ("get" for all files) with the command mentioned in my original post - but the issue there is that it does not include the comments for all TFS changeset check-ins - and that is the one thing we are after in migrating to Git. The only history it would show in git was comments related to the branching changeset - which we don't use - so we have no meaningful history.
To me, my question is simple: Does Git TFS support getting the check-in comment from ALL changesets in TFS and showing that somewhere in Git history?
If yes, what are issues with TFS that might prevent Git TFS from reading / processing them?
from git-tfs.
[Edited to fix formating]
To me, my question is simple: Does Git TFS support getting the check-in comment from ALL changesets in TFS and showing that somewhere in Git history?
It should to able to support getting all changesets from the TFS history of that folder.
But only if the changeset was created on the Branch.
Assume the following
$/SomeProject/Main
with Changsets 1,2,3,4 and a Branch $/SomeProject/Dev
is created based on Changeset 4 from $/SomeProject/Main
(as Changeset 5). Furthermore, in Dev, Changeset 6 and 7 are created
If you are cloning with git tfs clone --branches=none
only on $/SomeProject/Dev
, then you would only receive
Changesets 6 and 7 in addition to Changeset 5 which is creating the branch. But you would not get Changeset 1-4, as they
are not on the folder you are cloning.
Does this answer your question?
from git-tfs.
Thanks for the detailed explanation (and for previous replies).
To use your example, I'm basically doing...
git tfs clone --branches=none $/SomeProject/Main
This gives me a warning before running:
warning: you are going to clone the whole repository or too high in the repository path !
=> If you want to manage branches with git-tfs, clone one of this branch instead :
After the warning, it lists out some branches that are under "SomeProject" - but they are not what I want to migrate to Git.
What I want to clone actually is "Main" where "Main" is the equivalent of our "Dev" folder. It is a folder in TFS and not a branch.
The problem here is that while running, it seems to stop using the "get" command in the debug output and changes to "D" as mentioned earlier. The thousands of debug output lines look something like this:
get [C128384] $/<project name>/Dev/<folder path and filename>
C128384 is the original check-in/changeset for this Dev folder so it makes me think git tfs is in the right place, but I can't explain why it's having trouble completing - OR, what it means when it switches from "get" to "D" in the log. I attempted this clone again yesterday and the same thing happens. Also of note, when the get/D change happens, the changeset number is no longer in the log statement. Additionally, there is a significant delay (1.5 hours) in time when this happens as well.
I understand your explanation and it sounds like an answer to my question, but the execution isn't matching the expectation I guess.
from git-tfs.
The message is coming from here:
git-tfs/src/GitTfs/Commands/Clone.cs
Line 184 in 36be558
What you could do is building git-tfs yourself and the try to debug the clone of the problematic changeset.
I know that this is probably not what you want to hear, but I guess without further analysis of history it is impossible
analyze this remotely :-(
from git-tfs.
Related Issues (20)
- Policy: Internal error in Work Items. Error loading the Work Items policy HOT 2
- Adding work items to the export file doesn't work
- git-tfs not showing history showing error,"Please report this case to the git-tfs developers!" HOT 1
- New Release after v0.32.0 HOT 4
- Sudden authentication issue HOT 2
- Export map can't be created, if a TFS changeset shall be assigned to multiple commits
- Wrong branch cloned when several branch names starts in the same
- "git tfs" isn't a command, but "git-tfs" is a command HOT 1
- Error while cloning branches by using command. - git tfs clone https://TFSURL/tfs/defaultcollection/ $/ProjectName/Ressursstyring/src/next . --branches=all HOT 2
- How is v0.33.0 supporting Vs2022 as mentioned in the release notes? HOT 3
- Exclude folders from migration. HOT 2
- "GitTfs.Core.GitTfsException: Nothing to checkin!" on "git tfs rcheckin" HOT 5
- Cannot verify the migrated repository 'Unable to cast object of type ....' HOT 3
- Feature Request : Submit git-tfs to winget HOT 2
- .gitattributes ignored HOT 6
- I couldn't run them at first, but then managed to run Checkin Policies on VS2022 HOT 1
- Crash if no VS installed
- Case changing renames in TFS are ignored HOT 4
- How does --ignore-branches-regex work? HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from git-tfs.