2021-05-24 20:00:05 +03:00
|
|
|
Checks that squash and merge do the same thing, with nontrivial history that
|
|
|
|
includes a merge conflict.
|
|
|
|
|
|
|
|
```unison
|
2021-05-24 22:30:30 +03:00
|
|
|
x.a.p = "af"
|
|
|
|
x.a.q = "ef"
|
2021-05-24 20:00:05 +03:00
|
|
|
```
|
|
|
|
|
|
|
|
```ucm
|
|
|
|
|
|
|
|
I found and typechecked these definitions in scratch.u. If you
|
|
|
|
do an `add` or `update`, here's how your codebase would
|
|
|
|
change:
|
|
|
|
|
|
|
|
⍟ These new definitions are ok to `add`:
|
|
|
|
|
2021-05-24 22:30:30 +03:00
|
|
|
x.a.p : Text
|
|
|
|
x.a.q : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
```
|
|
|
|
```ucm
|
|
|
|
.> add
|
|
|
|
|
|
|
|
⍟ I've added these definitions:
|
|
|
|
|
2021-05-24 22:30:30 +03:00
|
|
|
x.a.p : Text
|
|
|
|
x.a.q : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
.> fork x y
|
|
|
|
|
|
|
|
Done.
|
|
|
|
|
|
|
|
.> fork x s
|
|
|
|
|
|
|
|
Done.
|
|
|
|
|
|
|
|
.> fork x m
|
|
|
|
|
|
|
|
Done.
|
|
|
|
|
2021-05-24 22:30:30 +03:00
|
|
|
.> delete y.a.p
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
Name changes:
|
|
|
|
|
|
|
|
Original Changes
|
2021-05-24 22:30:30 +03:00
|
|
|
1. m.a.p ┐ 2. y.a.p (removed)
|
|
|
|
3. s.a.p │
|
|
|
|
4. x.a.p │
|
|
|
|
5. y.a.p ┘
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
Tip: You can use `undo` or `reflog` to undo this change.
|
|
|
|
|
|
|
|
```
|
|
|
|
```unison
|
2021-05-24 22:30:30 +03:00
|
|
|
y.a.p = "fij"
|
2021-05-24 20:00:05 +03:00
|
|
|
```
|
|
|
|
|
|
|
|
```ucm
|
|
|
|
|
|
|
|
I found and typechecked these definitions in scratch.u. If you
|
|
|
|
do an `add` or `update`, here's how your codebase would
|
|
|
|
change:
|
|
|
|
|
|
|
|
⍟ These new definitions are ok to `add`:
|
|
|
|
|
2021-05-24 22:30:30 +03:00
|
|
|
y.a.p : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
```
|
|
|
|
```ucm
|
|
|
|
.> add
|
|
|
|
|
|
|
|
⍟ I've added these definitions:
|
|
|
|
|
2021-05-24 22:30:30 +03:00
|
|
|
y.a.p : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
```
|
|
|
|
```unison
|
2021-05-24 22:30:30 +03:00
|
|
|
y.b.p = "wie"
|
2021-05-24 20:00:05 +03:00
|
|
|
```
|
|
|
|
|
|
|
|
```ucm
|
|
|
|
|
|
|
|
I found and typechecked these definitions in scratch.u. If you
|
|
|
|
do an `add` or `update`, here's how your codebase would
|
|
|
|
change:
|
|
|
|
|
|
|
|
⍟ These new definitions are ok to `add`:
|
|
|
|
|
2021-05-24 22:30:30 +03:00
|
|
|
y.b.p : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
```
|
2021-05-24 22:30:30 +03:00
|
|
|
Merge back into the ancestor.
|
|
|
|
|
2021-05-24 20:00:05 +03:00
|
|
|
```ucm
|
|
|
|
.> add
|
|
|
|
|
|
|
|
⍟ I've added these definitions:
|
|
|
|
|
2021-05-24 22:30:30 +03:00
|
|
|
y.b.p : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
.> merge y.b y.a
|
|
|
|
|
|
|
|
Here's what's changed in y.a after the merge:
|
|
|
|
|
|
|
|
New name conflicts:
|
|
|
|
|
2021-05-24 22:30:30 +03:00
|
|
|
1. p#a3ef1630bu : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
↓
|
2021-05-24 22:30:30 +03:00
|
|
|
2. ┌ p#a3ef1630bu : Text
|
|
|
|
3. └ p#fjqpdmdeqi : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
Tip: You can use `todo` to see if this generated any work to
|
|
|
|
do in this namespace and `test` to run the tests. Or you
|
|
|
|
can use `undo` or `reflog` to undo the results of this
|
|
|
|
merge.
|
|
|
|
|
|
|
|
.> delete.term 1
|
|
|
|
|
|
|
|
Resolved name conflicts:
|
|
|
|
|
2021-05-24 22:30:30 +03:00
|
|
|
1. ┌ y.a.p#a3ef1630bu : Text
|
|
|
|
2. └ y.a.p#fjqpdmdeqi : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
↓
|
2021-05-24 22:30:30 +03:00
|
|
|
3. y.a.p#fjqpdmdeqi : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
Tip: You can use `undo` or `reflog` to undo this change.
|
|
|
|
|
2021-05-24 22:30:30 +03:00
|
|
|
.> history x.a
|
|
|
|
|
|
|
|
Note: The most recent namespace hash is immediately below this
|
|
|
|
message.
|
|
|
|
|
|
|
|
⊙ #mt9jsk344h
|
|
|
|
|
|
|
|
+ Adds / updates:
|
|
|
|
|
|
|
|
p q
|
|
|
|
|
|
|
|
□ #7asfbtqmoj (start of history)
|
|
|
|
|
|
|
|
.> history y.a
|
|
|
|
|
|
|
|
Note: The most recent namespace hash is immediately below this
|
|
|
|
message.
|
|
|
|
|
|
|
|
⊙ #bbfih4a2g4
|
|
|
|
|
|
|
|
- Deletes:
|
|
|
|
|
|
|
|
p
|
|
|
|
|
|
|
|
This segment of history starts with a merge. Use
|
|
|
|
`history #som3n4m3space` to view history starting from a given
|
|
|
|
namespace hash.
|
|
|
|
|
|
|
|
⊙ #6vg166teag
|
|
|
|
⑃
|
|
|
|
#0530pbcaqe
|
|
|
|
#oe3qde4k0g
|
|
|
|
|
|
|
|
.> history #0530pbcaqe
|
|
|
|
|
|
|
|
Note: The most recent namespace hash is immediately below this
|
|
|
|
message.
|
|
|
|
|
|
|
|
⊙ #0530pbcaqe
|
|
|
|
|
|
|
|
+ Adds / updates:
|
|
|
|
|
|
|
|
p
|
|
|
|
|
|
|
|
⊙ #2mqnhg89fi
|
|
|
|
|
|
|
|
- Deletes:
|
|
|
|
|
|
|
|
p
|
|
|
|
|
|
|
|
⊙ #mt9jsk344h
|
|
|
|
|
|
|
|
+ Adds / updates:
|
|
|
|
|
|
|
|
p q
|
|
|
|
|
|
|
|
□ #7asfbtqmoj (start of history)
|
|
|
|
|
|
|
|
.> history #oe3qde4k0g
|
|
|
|
|
|
|
|
Note: The most recent namespace hash is immediately below this
|
|
|
|
message.
|
|
|
|
|
|
|
|
⊙ #oe3qde4k0g
|
|
|
|
|
|
|
|
+ Adds / updates:
|
|
|
|
|
|
|
|
p
|
|
|
|
|
|
|
|
□ #7asfbtqmoj (start of history)
|
|
|
|
|
2021-05-24 20:00:05 +03:00
|
|
|
.> merge y m
|
|
|
|
|
|
|
|
Here's what's changed in m after the merge:
|
|
|
|
|
|
|
|
Updates:
|
|
|
|
|
2021-05-24 22:30:30 +03:00
|
|
|
1. a.p : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
↓
|
2021-05-24 22:30:30 +03:00
|
|
|
2. a.p : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
Added definitions:
|
|
|
|
|
2021-05-24 22:30:30 +03:00
|
|
|
3. ┌ a.p : Text
|
|
|
|
4. └ b.p : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
Tip: You can use `todo` to see if this generated any work to
|
|
|
|
do in this namespace and `test` to run the tests. Or you
|
|
|
|
can use `undo` or `reflog` to undo the results of this
|
|
|
|
merge.
|
|
|
|
|
|
|
|
.> squash y s
|
|
|
|
|
|
|
|
Here's what's changed in s after the merge:
|
|
|
|
|
2021-05-24 23:28:00 +03:00
|
|
|
Updates:
|
2021-05-24 20:00:05 +03:00
|
|
|
|
2021-05-24 23:28:00 +03:00
|
|
|
<<<<<<< HEAD
|
2021-05-24 22:30:30 +03:00
|
|
|
1. a.p#0gr1q8f2jk : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
↓
|
2021-05-24 22:30:30 +03:00
|
|
|
2. ┌ a.p#0gr1q8f2jk : Text
|
|
|
|
3. └ a.p#fjqpdmdeqi : Text
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
Added definitions:
|
|
|
|
|
2021-05-24 22:30:30 +03:00
|
|
|
4. ┌ a.p#fjqpdmdeqi : Text
|
|
|
|
5. └ b.p : Text
|
2021-05-24 23:28:00 +03:00
|
|
|
=======
|
|
|
|
1. a.a : Text
|
|
|
|
↓
|
|
|
|
2. a.a : Text
|
|
|
|
|
|
|
|
Added definitions:
|
|
|
|
|
|
|
|
3. ┌ a.a : Text
|
|
|
|
4. └ b.a : Text
|
|
|
|
>>>>>>> a02768d3f (Add short-circuiting for `squash`)
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
Tip: You can use `todo` to see if this generated any work to
|
|
|
|
do in this namespace and `test` to run the tests. Or you
|
|
|
|
can use `undo` or `reflog` to undo the results of this
|
|
|
|
merge.
|
|
|
|
|
|
|
|
.s> todo
|
|
|
|
|
2021-05-24 23:28:00 +03:00
|
|
|
<<<<<<< HEAD
|
2021-05-24 20:00:05 +03:00
|
|
|
❓
|
|
|
|
|
2021-05-24 22:30:30 +03:00
|
|
|
These terms have conflicting definitions: a.p
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
Tip: This occurs when merging branches that both independently
|
2021-05-24 22:30:30 +03:00
|
|
|
introduce the same name. Use `view a.p` to see the
|
2021-05-24 20:00:05 +03:00
|
|
|
conflicting defintions, then use `move.term` to resolve
|
|
|
|
the conflicts.
|
2021-05-24 23:28:00 +03:00
|
|
|
=======
|
|
|
|
✅
|
|
|
|
|
|
|
|
No conflicts or edits in progress.
|
|
|
|
>>>>>>> a02768d3f (Add short-circuiting for `squash`)
|
2021-05-24 20:00:05 +03:00
|
|
|
|
|
|
|
```
|