6.0 KiB
6.0 KiB
$ rad diff
! Deprecated: The command/option `rad diff` is deprecated and will be removed. Please use `git diff` instead.
Exploring rad diff.
#include <stdio.h>
int main(void) {
printf("Hello World!\n");
return 0;
}
$ ls
README
main.c
$ git mv README README.md
$ git add main.c
$ git commit -m "Make changes"
[master 5f771e0] Make changes
2 files changed, 6 insertions(+)
rename README => README.md (100%)
create mode 100644 main.c
$ rad diff HEAD^ HEAD
╭────────────────────────────────────────────╮
│ README -> README.md ❲moved❳ │
╰────────────────────────────────────────────╯
╭────────────────────────────────────────────╮
│ main.c +6 ❲created❳ │
├────────────────────────────────────────────┤
│ @@ -0,0 +1,6 @@ │
│ 1 + #include <stdio.h> │
│ 2 + │
│ 3 + int main(void) { │
│ 4 + printf("Hello World!/n"); │
│ 5 + return 0; │
│ 6 + } │
╰────────────────────────────────────────────╯
$ sed -i 's/Hello World/Hello Radicle/' main.c
$ rad diff
╭──────────────────────────────────────────────╮
│ main.c -1 +1 │
├──────────────────────────────────────────────┤
│ @@ -1,6 +1,6 @@ │
│ 1 1 #include <stdio.h> │
│ 2 2 │
│ 3 3 int main(void) { │
│ 4 - printf("Hello World!/n"); │
│ 4 + printf("Hello Radicle!/n"); │
│ 5 5 return 0; │
│ 6 6 } │
╰──────────────────────────────────────────────╯
$ git add main.c
$ rad diff
$ rad diff --staged
╭──────────────────────────────────────────────╮
│ main.c -1 +1 │
├──────────────────────────────────────────────┤
│ @@ -1,6 +1,6 @@ │
│ 1 1 #include <stdio.h> │
│ 2 2 │
│ 3 3 int main(void) { │
│ 4 - printf("Hello World!/n"); │
│ 4 + printf("Hello Radicle!/n"); │
│ 5 5 return 0; │
│ 6 6 } │
╰──────────────────────────────────────────────╯
$ git rm -f -q main.c
$ rad diff --staged
╭────────────────────────────────────────────╮
│ main.c -6 ❲deleted❳ │
├────────────────────────────────────────────┤
│ @@ -1,6 +0,0 @@ │
│ 1 - #include <stdio.h> │
│ 2 - │
│ 3 - int main(void) { │
│ 4 - printf("Hello World!/n"); │
│ 5 - return 0; │
│ 6 - } │
╰────────────────────────────────────────────╯
For now, copies are not detected.
$ git reset --hard master -q
$ mkdir docs
$ cp README.md docs/README.md
$ git add docs
$ rad diff --staged
╭─────────────────────────────╮
│ docs/README.md +1 ❲created❳ │
├─────────────────────────────┤
│ @@ -0,0 +1,1 @@ │
│ 1 + Hello World! │
╰─────────────────────────────╯
$ git reset
$ git checkout .
Empty file.
$ touch EMPTY
$ git add EMPTY
$ rad diff --staged
╭─────────────────╮
│ EMPTY ❲created❳ │
╰─────────────────╯
$ git reset
$ git checkout .
File mode change.
$ chmod +x README.md
$ rad diff
╭───────────────────────────────────────────╮
│ README.md 100644 -> 100755 ❲mode changed❳ │
╰───────────────────────────────────────────╯
$ git reset -q
$ git checkout .
Binary file.
$ touch file.bin
$ truncate -s 8 file.bin
$ git add file.bin
$ rad diff --staged
╭─────────────────────────────╮
│ file.bin ❲binary❳ ❲created❳ │
╰─────────────────────────────╯