Abstract:
Software developers must work together in order to provide a better product. As
a result, many software developers use version control systems throughout project
development since it helps them manage source code and enables them to keep
track of the many versions they’ve worked on. Items are organized, regulated, and
directed by this strategy. In spite of the fact that the version control system is
generally decentralized, there is no properly defined practical method for remotely
maintaining the code that is not centralized. For a distributed network of computers, we describe and explain our solution, which leverages a blockchain and smart
contracts to authorize, monitor, and perform version control actions on a code
repository. Using our strategy, there is no need to have a centralized authority
that is trustworthy. The immutability of the code and the ownership information
of the code writer are protected via the blockchain. A network of servers (IPFS)
also maintains the security of the code repository and its content. In this system,
the code is stored on a distributed network of servers, ensuring its availability
and integrity, while a decentralized blockchain ensures ownership information and
the immutability of the repository by encrypting information from the codebase’s
remote location with a hash that combines the owner’s key and the entire code
repository.
Description:
Supervised by
A.B.M. Ashikur Rahman,
Asst. Professor,
Department of Computer Science and Engineering(CSE),
Islamic University of Technology (IUT)
Board Bazar, Gazipur-1704, Bangladesh.
This thesis is submitted in partial fulfillment of the requirements for the degree of Bachelor of Science in Computer Science and Engineering, 2022.