Almost.
- Fork the library to your account
- Check out your fork
- Edit as needed
- Commit locally
- Push back to your fork
Your fork is yours to do with as you wish. Github makes it easy, should you wish, to then pass those changes back up to the original repository (make a "pull request"). But you don't have to do that (and probably don't want to).
You can make a new branch if you like, but that's pointless - your fork is, in effect, a branch itself (well, it's an entire new tree really).
Answer from Majenko on Stack Exchange"fork" off an analog input
Recommended way to fork a library - Arduino Stack Exchange
Fork/exec cmd.exe
arduino uno - How can I create multiple running threads? - Arduino Stack Exchange
There is no multi-process, nor multi-threading, support on the Arduino. You can do something close to multiple threads with some software though.
You want to look at Protothreads:
Protothreads are extremely lightweight stackless threads designed for severely memory constrained systems, such as small embedded systems or wireless sensor network nodes. Protothreads provide linear code execution for event-driven systems implemented in C. Protothreads can be used with or without an underlying operating system to provide blocking event-handlers. Protothreads provide sequential flow of control without complex state machines or full multi-threading.
Of course, there is an Arduino example here with example code. This SO question might be useful, too.
ArduinoThread is a good one too.
AVR based Arduino's do not support (hardware) threading, I am unfamiliar with the ARM based Arduino's. One way around this limitation is the use of interrupts, especially timed interrupts. You can program a timer to interrupt the main routine every so many microseconds, to run a specific other routine.
https://www.arduino.cc/reference/en/language/functions/interrupts/interrupts/