46 |
46 |
47 @attr.s(slots=True, init=False) |
47 @attr.s(slots=True, init=False) |
48 class DirstateItem(object): |
48 class DirstateItem(object): |
49 """represent a dirstate entry |
49 """represent a dirstate entry |
50 |
50 |
51 It contains: |
51 It hold multiple attributes |
52 |
52 |
53 - state (one of 'n', 'a', 'r', 'm') |
53 # about file tracking |
54 - mode, |
54 - wc_tracked: is the file tracked by the working copy |
55 - size, |
55 - p1_tracked: is the file tracked in working copy first parent |
56 - mtime, |
56 - p2_tracked: is the file tracked in working copy second parent |
|
57 |
|
58 # about what possible merge action related to this file |
|
59 - clean_p1: merge picked the file content from p1 |
|
60 - clean_p2: merge picked the file content from p2 |
|
61 - merged: file gather changes from both side. |
|
62 |
|
63 # about the file state expected from p1 manifest: |
|
64 - mode: the file mode in p1 |
|
65 - size: the file size in p1 |
|
66 |
|
67 # about the file state on disk last time we saw it: |
|
68 - mtime: the last known clean mtime for the file. |
|
69 |
|
70 The last three item (mode, size and mtime) can be None if no meaningful (or |
|
71 trusted) value exists. |
|
72 |
57 """ |
73 """ |
58 |
74 |
59 _wc_tracked = attr.ib() |
75 _wc_tracked = attr.ib() |
60 _p1_tracked = attr.ib() |
76 _p1_tracked = attr.ib() |
61 _p2_tracked = attr.ib() |
77 _p2_tracked = attr.ib() |