Git command lines - SVF-tools/SVF GitHub Wiki
1. Set up your git names
git clone https://github.com/SVF-tools/SVF.git
git config --global user.name "Your name"
git config --global user.email "[email protected]"
2. Git status (any local new changes) and log (commit history of your local repo)
git status
git log
3. Git pull from your repo
git pull
4. Add your changes, commit and push to your repo
git add your_file
git commit -m "comments"
git push
5. Git reset to HEAD (remove a file from your commit file list)
git reset HEAD yourfile
6. Git pull from a remote repo
git remote add upstream https://github.com/SVF-tools/SVF.git
git pull upstream master
git push origin master # push to your repo once after your pull from a remote repo
7. Git push to a remote repo
git remote add upstream https://github.com/SVF-tools/SVF.git
git push upstream master
8. Make a pull request from private repo to a public one
git clone https://github.com/SVF-tools/SVF.git
cd public-repo
git remote add private_repo_yourname https://github.com/yuleisui/SVF.git
git checkout -b pull_request_yourname
git pull private_repo_yourname master
git push origin pull_request_yourname
9. Git switch to an existing branch
git checkout [name_of_your_existing_branch]
git checkout origin/master
10. Create the branch on your local machine and switch in this branch
git checkout -b [name_of_your_new_branch]
Push the branch on github :
git push origin [name_of_your_new_branch]
11. Delete a Local Git branch (first, you need to switch to another branch to delete the one you want)
git branch -d branch_name
12. Delete a remote Git branch
git push origin --delete <branch_name>
13. Git Rebase to a certain commit
git rebase -i commitId
For example, there are two commits 154a03f6
and ac9c1fd4
after a commit e06b526
(git rebase -i e06b526).
You will need to change the following two pick
to be s
, so that the two commits are merged to e06b526
pick e06b526 dyn lib 18.04 ubuntu
pick 154a03f6 update bc files
pick ac9c1fd4 Update build.sh
pick e06b526 dyn lib 18.04 ubuntu
s 154a03f6 update bc files
s ac9c1fd4 Update build.sh
Finally, you will need to force git push
git push -f