======DAC0 project documentation====== =====Toolbox===== It would be especially useful to review the manual pages or any documentation on the following resources: * **ls**(**1**) - lists files. * **apropos**(**1**) - lists commands that have a given term * **unzip**(**1**) - unzips zipped/compressed files * **uudecode**(**1**) - decodes file. * **tac**(**1**) - flips the text within the vertically. * **tar**(**1**) - manages archives * **rev**(**1**) - reverses lines of text. =====Background===== ====What is an archive==== a place where data is collected, preserved, managed, and made accessible to those with permission; although many are public. in the context of Linux, an archive is a place to store as many folders / files as one needs into one centralized file for long-term use. ====What actions can be performed on an archive?==== an archive can be compressed to be smaller ====What is compression==== the proccess of encoding data into fewer bits than the original representation ====How does compression differ from archiving?==== archiving doesn't reduce file size, while compression does. ====Types of compression (lossy vs lossless)==== after compressing a file with a lossless technique, the original image before it was compressed should look exactly the same after it is decompressed. Lossy compression makes a file lose data everytime it is compressed and decompressed. =====Procedure===== =====Repository Operations===== ====Checking current repository status==== hg status brings up a list of all things ready to be staged ====Adding untracked files to repository==== hg add stages files, to get ready to be commited. ====Committing changes==== hg commit -m "your message here." committing a change initializes it for a push and gives a description to the update ====Pushing commits upstream to server==== hg push. pushes any commits to the remote repository. ====Pulling changes from server==== hg pull. pulls changes from repo, but doesn't go into effect immediately. ====Updating current repository==== hg update. after pulling, do update to change your devices repo to update to the pulled one.