Git 是一个分布式版本控制系统,用于跟踪文件的变化,协调多个开发者之间的工作。以下是 Git 常用基本命令的详细使用方法:
创建版本库- git clone <repository>克隆远程版本库到本地。
- git init初始化本地版本库。
修改 & 提交- git status查看当前工作目录和暂存区的状态。
- git diff查看未暂存的变更内容。
- git add .跟踪所有改动过的文件,将它们添加到暂存区。
- git add <file>跟踪指定的文件,将其添加到暂存区。
- git mv <old> <new>文件改名,并将改名操作记录到暂存区。
- git rm <file>删除文件,并将删除操作记录到暂存区。
- git rm --cached <file>停止跟踪文件但不删除文件本身。
- git commit -m "commit message"提交所有更新过的文件,并附带提交信息。
- git commit --amend修改最后一次提交,可以用于补充遗漏的文件或修改提交信息。
查看提交历史- git log查看提交历史。
- git log -p查看指定文件的提交历史,并显示每次提交的变更内容。
- git blame <file>以列表方式查看指定文件的提交历史,显示每行的最后修改者和修改时间。
撤消- git reset --hard HEAD撤消工作目录中所有未提交文件的修改内容,恢复到最近一次提交的状态。
- git checkout HEAD <file>撤消指定的未提交文件的修改内容,恢复到最近一次提交的状态。
- git revert <commit>撤消指定的提交,生成一个新的提交来抵消之前的变更。
分支与标签- git branch显示所有本地分支。
- git checkout <branch>切换到指定分支或标签。
- git branch <new-branch>创建新分支。
- git branch -d <branch>删除本地分支。
- git tag列出所有本地标签。
- git tag <tag-name>基于最新提交创建标签。
- git tag -d <tag-name>删除标签。
合并与衍合- git merge <branch>合并指定分支到当前分支。
- git rebase <branch>衍合指定分支到当前分支,重新应用当前分支的提交到指定分支的最新提交之后。
远程操作- git remote -v查看远程版本库信息,包括远程仓库的 URL。
- git remote show <remote>查看指定远程版本库信息,包括远程分支和本地分支的跟踪关系。
- git remote add <name> <url>添加远程版本库,并为其指定一个名称。
- git fetch <remote>从远程库获取代码,但不自动合并。
- git pull <remote> <branch>下载代码及快速合并,相当于 git fetch 后跟 git merge。
- git push <remote> <branch>上传代码及快速合并,将本地分支的提交推送到远程分支。
- git push <remote> :<branch>删除远程分支或标签。
- git push --tags上传所有标签到远程仓库。