Git
万字详解!Git 入门最佳实践
开眼了,腾讯是如何使用 Git 的 ?
常用命令
-
设置提交代码时的用户信息
git config [--global] user.name "[name]"
git config [--global] user.email "[email address]"
-
下载一个项目和它的整个代码历史
git clone [url]
-
添加当前目录的所有文件到暂存区
git add .
-
撤销最后一次git add files
git reset -- files
-
撤销所有暂存区域文件
git reset
-
把文件从暂存区域复制到工作目录,用来丢弃本地修改
git checkout -- files
-
提交暂存区到仓库区
git commit -m [message]
-
上传本地指定分支到远程仓库
git push [remote] [branch]
-
取回远程仓库的变化,并与本地分支合并`
git pull [remote] [branch]
-
列出所有本地分支
git branch
-
列出所有远程分支
git branch -r
-
新建一个分支,并切换到该分支
git checkout -b [branch]
-
切换到指定分支,并更新工作区
git checkout [branch-name]
-
显示有变更的文件
git status
-
显示当前分支的版本历史
git log -3
-
显示过去3次提交
git log -3 --pretty --oneline
-
显示暂存区和工作区的差异
git diff
-
显示工作区与当前分支最新commit之间的差异
git diff HEAD
-
对比不同commit下的同一文件内容的差异
git diff commit_1_SHA1 commit_2_SHA1 [文件路径,不包含干目录]
-
恢复暂存区的指定文件到工作区
git checkout [file]
-
恢复某个commit的指定文件到暂存区和工作区
git checkout [commit] [file]
-
恢复暂存区的所有文件到工作区
git checkout .
-
重置暂存区与工作区,与上一次commit保持一致
git reset --hard
-
合并指定分支到当前分支
git merge [branch]
-
Git删除本地分支(先切换到别的分支)
git branch -d [branch_name] (如果删除不了可以强制删除,git branch -D [branch_name])
-
Git删除远程分支(先切换到别的分支)
git push origin --delete [branch_name]
-
git强制合并另一个分支
git checkout Old git reset --hard New