Fenrir ID:
git/ad-nib
Do not create any merge request! Just push all the branches to the remote repository.
The task sources are available here. Add this repository as a remote and fetch all branches.
Switch to branch rebase and apply these changes:
-
Rename
naplestonapoli -
Drop
genovacommit -
Developers forgot to make
script.shexecutable inroma: fix it -
Squash
firenzeandbolognainto a single commit withtorinomessage andfirenze & bolognabody
Use
supplementarybranch to find the sources
Create branch ignore from the main branch in foreign.bundle. Add .gitignore file which:
-
Forbids to commit
bindirectory -
Forbids to commit any file with extension
.oexcepto.oin the project’s root directory
|
Important
|
Only one commit is allowed apart from the bundle’s commits. |
Create a git hook which validates commit messages: [␣DESCRIPTOR␣]␣DESCRIPTION
-
DESCRIPTORis one ofADD,FIX,DEL -
DESCRIPTIONis a sequence of latin symbols and digits -
␣is a whitespace symbol
To use the hook create an additional script install
which installs the hook. The solution must be committed to hooks branch.
Create a public fork of this repository. The fork must be located in your user’s namespace. The fork name must be koshej.
Add the fork as a submodule into your project (branch submodules), it must be cloned to koshchei directory.
Add this repository as another submodule. It must be cloned to oak/hare directory.
Create a script setup.sh which downloads the data from all the repositories and updates all the dependencies (e.g. one of submodules might be outdated by default). The solution must be committed to submodules branch.
|
Caution
|
Use http links instead of ssh ones! |
-
What happens to commits when an interactive rebase is used?
-
How to use/extract files from another branch? (Try to use commands from the previous task)
-
What happens when you try to merge branches that have no common ancestor?
-
Which sequence of commands does GitLab/GitHub use to create a fork?
-
Provide a scenario when the committer and author differ without any explicit modifications.
The project is licensed under the terms of the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
© 2026-present Iwan Kalinin <koefic.cien@gmail.com>