#
Fabacademy - Principles and Practices

PRINCIPLES AND PRACTICES & PROJECT MANAGEMENT 🖥

WEEKLY ASSIGNMENTS

The purpose is to acquire skills in using a version control system such as Git, develop a website and begin to capture the ideas of the final project in visual form.

REFERENCES TO START MY WEBSITE

LINKS FUNCTION
Git Git Git is a distributed version control system used to track changes in code files and coordinate work among multiple individuals in software development projects.
Fabcloud Fabcloud Fab Lab Cloud is a cloud-based platform for managing Fab Labs, enabling users to access and share designs, control machines, manage inventory, and collaborate on digital fabrication projects remotely.
Template Template Templates are models I used to create my HTML page, simplifying the process by standardizing formats and enhancing efficiency in all aspects.
VS Code Visual Studio Code Visual Studio Code is a Microsoft code editor used for programming and software development. It offers advanced editing features, Git integration, and high customization through extensions.

💻 Essential Commands for Your Terminal 📟

Command Description
cd "folder_name" Navigates to and opens a specific folder. For example: cd Documents.
cd .. Goes back to the parent directory (one level up).
ls Lists files and folders in the current directory. Use ls -l for more details.
pwd Shows the full path of your current working directory.
mkdir "folder_name" Creates a new folder with the specified name. Example: mkdir MyNewProject.
rm "file_name" Deletes a specific file. Be careful, it doesn't go to the Recycle Bin/Trash!
rm -r "folder_name" Deletes a folder and all its contents recursively. **Use with extreme caution!**
mv "source" "destination" Moves a file or folder from one location to another, or **renames** a file/folder. Example: mv file.txt new_folder/.
cp "source" "destination" Copies a file or folder. Use cp -r for copying folders.
touch "file_name" Creates a new, empty file. Useful for quickly initializing files.
cat "file_name" Displays the content of a file directly in the terminal.
clear Clears the terminal screen, providing a clean workspace.
history Shows a history of commands you have executed previously.
man "command" Displays the help manual for a specific command (e.g., man ls).
Git Commands - Visual Guide

📚 Git Commands Visual Guide

Category Command Description
Initial Configuration git config Sets up username and email (basic configuration).
Initial Configuration git init Initializes a new local repository.
Initial Configuration git clone <repository_url> Clones an existing repository (alternative to init).
Version Control git status Shows the current state of files (tracked/untracked).
Version Control git add <file> Adds files to the staging area (preparation for commit). Use git add . to add all changes.
Version Control git commit -m "message" Records changes to the repository's history with a message.
Version Control git log Displays the complete commit history.
Remote Synchronization git remote -v Manages connections with remote repositories. Shows current remotes.
Remote Synchronization git push <remote> <branch> Sends local commits to the remote repository.
Remote Synchronization git pull <remote> <branch> Downloads remote changes and automatically merges them.
Remote Synchronization git fetch <remote> Downloads remote changes without merging them (safer for inspection).
Branch Management git branch <name> Creates/lists/deletes branches. Use git branch -d <name> to delete.
Branch Management git checkout <branch_name> Switches between branches or specific versions.
Branch Management git merge <branch_name> Merges changes from one branch into another.
Branch Management git rebase <branch_name> Reorganizes commit history (advanced alternative to merge).
Change Analysis git diff <file> Compares differences between file versions.
Change Analysis git log --oneline --graph Detailed history (with filtering options, e.g., --graph for a visual tree).
Change Analysis git status Quick summary of the current working tree status.
Reverting Changes git reset --hard <commit_hash> Resets to a previous state (use with extreme care, as it discards changes).
Reverting Changes git revert <commit_hash> Creates a new commit that undoes previous changes (safer for shared history).
Reverting Changes git restore <file> Restores specific file versions from the index or another commit.
Reverting Changes git rm <file> Removes files from the project and from the staging area.
Reverting Changes git clean -df Removes untracked files from the working directory. Use -f for force and -d for directories.

Essential HTML Elements

Reference table with the most commonly used commands in web development

Element Command
Insert Image <img src="image.jpg" alt="Text" width="300">
Navigation Menu <ul><li><a href="#section">Text</a></li></ul>
Main Header <h2>Main Title</h2>
Subtitle <h3>Subtitle</h3>
Paragraph <p>Text here</p>
Button <a href="#section" class="button large">See more</a>
YouTube Video <iframe src="https://www.youtube.com/embed/ID"></iframe>
External Link <a href="https://..." target="_blank">Go to link</a>
Code Block <pre><code>code here</code></pre>
Data Table <table><tr><td>Data</td></tr></table>

Final Project Idea 💡