I'm thinking you need to use the git clone <dir_project1> command to first clone your master project and use git checkout -b <new_branch_name> to create a new branch and work on the cloned project file with that branch selected.
To check what branch is selected run git checkout this will list all available branches (the asterisk will indicate which branch you are currently working in)
Once you have checked out the new branch you may begin to make changes to your project directory. All changes done now are being done via the branch you have just created. That way you won't modify your master branch until you have tested and are 100% positive you want to commit/merge your changes to the master branch. (we will get to this part towards the end)
Once you have modified the directory in some way (adding a file or modifying and existing file/directory) use the git add <insert_file_here.txt> command to allow git to understand that you have made changes to this file.
Next you should commit changes to save them permanently to that branch.
Normally before your first commit you would use git config that would contain your username or email to indicate who is making these changes.
ex: git config --global user.email EMAIL
git config --global user.name “FULL NAME"
But in this case since it is all local and it appears that you will be the only one working on these files you can skip this step and make your first local commit:
git commit -m “First draft of project.txt file”
(-m is used to describe the changes you are making which will show up if you run git diff <filename>)
Now instead of using push/pull (which is primarily used for remote repositories) for a local git configuration you can simply use the git merge command.
You must first checkout the master branch before attempting to merge, because you cannot merge the master branch while in the clone repositories.
git checkout master
git merge dir_project1
I was able to find a way to push to a local branch if you'd rather do it this way:
git push . dir_project1:master