Commit graph

  • b22c44f1ec fix(cli): cli now does not try to execute the command when argc is wrong main lisk77 2025-12-01 20:10:19 +01:00
  • 31388f077d refactor(cli): make adding of subcommands simpler lisk77 2025-12-01 20:04:22 +01:00
  • 136fac9243 fix: leaks shouldnt happen anymore lisk77 2025-11-24 23:52:51 +01:00
  • bb1e99406f fix(commit): leak proof now lisk77 2025-11-24 18:49:49 +01:00
  • fae8489871 fix(commit): make object hashes branch aware and thus dont error status out lisk77 2025-11-24 18:21:09 +01:00
  • 42b8858558 chore(gitignore): will now ignore the .cache directory lisk77 2025-11-24 16:00:08 +01:00
  • 40a5b77d17 fix(cli): will now not segfault if argc is less than 2 lisk77 2025-11-24 15:56:44 +01:00
  • 8aa95da2a1 refactor(cli): make main more clean and moving subcommands to the commands files lisk77 2025-11-23 00:38:25 +01:00
  • 58079f26da feat(hash): added branch name to object hash lisk77 2025-09-26 19:27:07 +02:00
  • a2805c1a3f fix(cli): tree doesnt try to strdup NULL out of the flat map lisk77 2025-09-25 16:43:15 +02:00
  • afbcd5d338 refactor(tree): removed everything relating to tree diffs lisk77 2025-09-25 16:33:13 +02:00
  • d07c67c35e refactor(hash): removed TreeDiffObject lisk77 2025-09-25 16:22:29 +02:00
  • 1fdcda6b42 feat(commit): added proper file to hash mapping lisk77 2025-09-24 19:24:53 +02:00
  • a495fb6ce8 feat(utilities): added a FlatMap for string key value pairs lisk77 2025-09-23 00:29:16 +02:00
  • bb961f0437 refactor(cli): moved all commands to seperate functions lisk77 2025-09-21 15:49:24 +02:00
  • 0e0d1fa1ef feat(cli): added a visual branch for the log lisk77 2025-09-21 00:13:39 +02:00
  • 0b7d959663 fix(object): free placement on actions parse lisk77 2025-09-21 00:12:40 +02:00
  • cba5d43039 feat(cli): added proper display of modified files and the changes on the current branch for the status command lisk77 2025-09-20 16:53:20 +02:00
  • b1515d21c4 fix(cli): fixed diff display in the post commit message lisk77 2025-09-20 05:41:22 +02:00
  • 730d2b84e0 fix(file): removed basefile prefix lisk77 2025-09-20 05:40:39 +02:00
  • a8a5408db4 fix(object): read_diff didnt read correctly lisk77 2025-09-20 05:39:28 +02:00
  • c1f11eceb2 refactor(common): moved common declerations to seperate files to avoid circular imports lisk77 2025-09-19 19:23:28 +02:00
  • 4b2575ab96 refactor(object, utilities): moved diff saving and reading to the object files lisk77 2025-09-19 19:22:40 +02:00
  • 13e3ba70b2 refactor(file, utilities): moved visualize_diff to myers.h lisk77 2025-09-19 19:17:47 +02:00
  • d611d2ed68 refactor(file, utilities): moved Changes struct to file.h lisk77 2025-09-19 19:16:56 +02:00
  • ff71a92249 refactor: split up the utilities file into smaller modules lisk77 2025-09-19 03:48:08 +02:00
  • abaa6e12fc fix(utilities): changed line_changed to line_original in apply_diffs delete case and sort deletions in descending order lisk77 2025-09-19 02:14:52 +02:00
  • 3e0a0d7057 fix(basefile): made sure file_info.hash is null instead of random memory lisk77 2025-09-19 00:01:14 +02:00
  • 8831b267e5 fix(utilities): made save diff accept a changes struct to count deletions and insertions lisk77 2025-09-18 23:59:54 +02:00
  • 550b47d568 fix(tree): now does properly generate the snapshot with the given FileInfoBuffer instead of the debug walk through the repo lisk77 2025-09-16 15:32:32 +02:00
  • 8cbf82a535 feat(cli): added commiting and displaying the commit log lisk77 2025-09-15 05:55:44 +02:00
  • cfb24bd3a2 feat(utilities): added functions to save, read and apply diffs lisk77 2025-09-15 03:25:45 +02:00
  • e2d026502f fix(tree): check now if the tree snapshot already exists lisk77 2025-09-15 03:24:47 +02:00
  • f19209ba0a feat(commit): added structs and functionality for the commit log lisk77 2025-09-15 03:23:49 +02:00
  • bb0ab630c0 feat(hash): added LogObject for commit hashes lisk77 2025-09-14 23:59:19 +02:00
  • d6f71d4b8b refactor(tree): removed unneeded function prototype lisk77 2025-09-12 23:08:40 +02:00
  • 2773588023 feat(tree): added save_tree_diff lisk77 2025-09-11 23:52:34 +02:00
  • 68885cb20f feat(file): added missing fee for file content lisk77 2025-09-10 23:14:01 +02:00
  • b28ff5f0e9 refactor(diff): changed the ordering of ActionType to accomedate the numbers that are saved in the object database lisk77 2025-09-09 23:50:31 +02:00
  • f27b523fbf fix(file): double free issue lisk77 2025-09-08 23:59:00 +02:00
  • 1e3934cf20 fix(diff): myers now also strdups the line of the file on insert action when taking the diff lisk77 2025-09-07 04:22:30 +02:00
  • 252bdc281e refactor(hash)!: added TreeDiffObject and changed the name from DiffObject to FileDiffObject lisk77 2025-09-06 19:34:51 +02:00
  • b4dff29a5c feat(basefiles): added utility to convert a BaseFileBuffer into a FileInfoBuffer lisk77 2025-09-05 21:15:42 +02:00
  • 315e37b643 feat(actions): added content field to Action to copy the insert text lisk77 2025-09-04 23:12:36 +02:00
  • 1dd9e2cbca feat(file): added utility functions to copy a file and insert/delete lines of the file lisk77 2025-09-03 23:42:50 +02:00
  • c8e5cd7095 fix(hash): removed LogObject because logs are mutable and not static (aka do not belong into the object database) lisk77 2025-09-02 02:01:20 +02:00
  • e9cf112c56 feat(hash)!: added the DiffObject case for the object id generation and renamed FileObject to BaseFileObject lisk77 2025-09-01 20:45:07 +02:00
  • 96ebd49533 fix(diff): split myers into header and source file to mitigate import errors lisk77 2025-08-31 18:02:52 +02:00
  • 0e07d4b63c feat(file): added saving a file snapshot to the object database lisk77 2025-08-31 04:43:11 +02:00
  • 90ae57e1e8 refactor(tree): removed debug prints lisk77 2025-08-31 03:44:02 +02:00
  • 8cc5c6310b feat(config,utilities): added a function to create a default config lisk77 2025-08-31 03:42:33 +02:00
  • 0fbfe09638 feat(build): added maths to the CMakeLists file lisk77 2025-08-30 21:48:31 +02:00
  • a089bc43c3 feat(config): added a simple user config lisk77 2025-08-29 20:15:19 +02:00
  • 1e4677bcda feat(config): added cktan/tomlc17 to the project lisk77 2025-08-28 23:48:39 +02:00
  • e3a2f43871 feat(utilities,basefiles): added remove function to List and BaseFileBuffer lisk77 2025-08-28 19:18:03 +02:00
  • 967b79d9ba feat(cli): added some base functionality to the commit and files command lisk77 2025-08-28 17:01:41 +02:00
  • 358db79882 feat(utilities): added the get_file_content_with_size to properly handle binary files lisk77 2025-08-28 17:00:49 +02:00
  • 37a696bd38 feat(file): changed the mode type from uint32_t to the proper mode_t lisk77 2025-08-28 16:58:57 +02:00
  • 1606f479db feat(basefiles): added the BaseFileBuffer with BaseFileInfo and its core functionality to track files in the repo lisk77 2025-08-28 16:15:16 +02:00
  • a3ee042758 refactor(tree): changes according to API changes of the FileInfoBuffer lisk77 2025-08-28 03:49:51 +02:00
  • 52e740fab0 refactor(utilities)!: renamed PathBuffer to StringBuffer lisk77 2025-08-28 03:48:44 +02:00
  • 983c6d4ca4 refactor(tree)!: renamed the save_tree function to snapshot_tree lisk77 2025-08-27 03:00:35 +02:00
  • e63fb4a0fa refactor(tree,utilities)!: moved the PathBuffer to utilities lisk77 2025-08-27 02:57:32 +02:00
  • 326a33a3f4 refactor(tree,utilities)!: moved find_root and walk to the utilities and removed the Tree struct in favor or the FileInfoBuffer lisk77 2025-08-27 02:03:05 +02:00
  • 8efadf051c refactor(tree)!: changed the api of the PathBuffer and generalized it to a List of char* lisk77 2025-08-27 01:23:00 +02:00
  • 7113b53caa feat(utilities): added the List struct for a general purpose dynamic array lisk77 2025-08-27 01:22:18 +02:00
  • 5b134edac6 feat(file): added the FileInfo struct lisk77 2025-08-27 01:21:29 +02:00
  • f4d15dd890 feat(build): added openssl to the CMakeLists file lisk77 2025-08-27 01:20:25 +02:00
  • d9066f10de feat(hash): added basic hashing functions to gain object ideas for the object storage lisk77 2025-08-26 00:07:53 +02:00
  • d7e754b67e feat(tree): added an option to get the full repo path in walk and added a sort function for the path buffer lisk77 2025-08-25 23:14:50 +02:00
  • 02df919575 feat(utilities): split utilities single header into header and c file lisk77 2025-08-25 23:13:31 +02:00
  • b7710d02a9 feat(tree): added a simple function to save tree snapshots compressed to the disk lisk77 2025-08-24 23:52:06 +02:00
  • e52740a03b refactor(cli)!: renamed status command to files and changed directory structure for the .merk dir lisk77 2025-08-23 12:11:53 +02:00
  • 483cb08a83 feat(utilities): added cut_path and combine_path to modify paths for storage and later usage in the file system lisk77 2025-08-22 23:54:29 +02:00
  • 25480fc92f feat: added a more general way to display relative paths for the status cli command lisk77 2025-08-21 14:28:07 +02:00
  • c372a5f8bc feat: added a simple filesystem tree walk and the status cli command to get a list of untracked files lisk77 2025-08-20 21:44:04 +02:00
  • 8b862f8b87 feat(cli): added init command to create a merk repository in the local directory lisk77 2025-08-19 23:20:28 +02:00
  • c8b4d93c89 feat(cli): added the diff command to display the difference of two files lisk77 2025-08-18 16:34:56 +02:00
  • 190aa7cc76 feat(diff): implemented the myers diff algorithm with longest common subsequence and printing the diff lisk77 2025-08-17 18:20:04 +02:00
  • f7043cc03a docs(action_list): small comments lisk77 2025-08-17 17:08:14 +02:00
  • e8338d011d feat(file): added empty file creation and slicing a file lisk77 2025-08-17 17:07:16 +02:00
  • 4e4e7be60e feat: read files and split them by lines lisk77 2025-08-16 08:16:04 +02:00
  • 390f2d367a fix: moved actions to action list lisk77 2025-08-16 01:02:06 +02:00
  • c18a85f1cc feat: initial commit lisk77 2025-08-16 00:45:53 +02:00