初始化配置
git config --global user.name "dozer.li"
git config --global user.email "dozer.li@hotmail.com"
git config --global color.ui auto
生成ssh key
ssh-keygen -t -rsa -C "doze.li@hotmail.com" (输入可以直接回车,不输入密码)
git init
git status
git add
git commit -m "this is a message"
git log
git log --pretty=short
git log README.md
git log -p
git log -p README.md
git diff
git branch
git branch feature-A
git checkout feature_A
git checkout -b feature-B
git checkout master
git merge --no-ff feature-A
git log --graph
git reflog
git reset --hard kkkkkkkkkkkkkkkkkkkkkkkk(哈希值,输入前4即可)
git commit --amend
git rebase -i HEAD~2(然后把要合并的提交的pick 改成fixup)
git remote add origin git@xxxxx.git
git branch -a 可以查看所有分支
git checkout -b feature-D origin/feature-D
git push origin dev_loc:dev_remote (将本地的dev_loc分支内容推送到dev_remote。这里为了说明git push语法中本地和远端位置关系,一般本地和远端分支名称一样)
git push origin HEAD:refs/for/master (使用gerrit进行代码推送时,一般还有其他成员审核,会先推送到refs/for/master路径,创建一个审查任务,而不会直接更改master分支)。
git remote -v (一般远端仓库名称都是origin,如果不确定可以使用本命令查看远端仓库名称)
git push -u origin master (-u参数可以在推送的同时,将origin仓库的master分支设置为本地仓库仓前分支的upstream(上游))。
git push (已经设置了跟踪远端分支,可以直接git push)
git branch -vv(这个命令列出所有本地分支,并显示它们当前的跟踪状态(如果有的话)。每个分支旁边会显示与之关联的远程分支(如果有的话),以及最后一次提交的信息。)
git remote show origin (显示与远程仓库 origin
的关联情况,包括哪些本地分支正在跟踪对应的远程分支,以及哪些远程分支没有对应的本地分支。)