1. Git 仓库的基本操作
git init:在当前目录下初始化一个新的 Git 仓库。git clone <repository>:从远程仓库克隆一个 Git 仓库到本地。git status:查看工作目录和暂存区的状态,显示哪些文件被修改或未跟踪。git add <file>:将文件添加到暂存区。git add .:添加所有修改的文件。
git commit -m "message":将暂存区的内容提交到仓库,并附带提交信息。git push:将本地的提交推送到远程仓库。git pull:从远程仓库拉取并合并更新。git fetch:从远程仓库拉取更新但不自动合并。
2. 分支管理
git branch:查看本地的分支列表。git branch <branch-name>:创建一个新的分支。git checkout <branch-name>:切换到指定的分支。git checkout -b <branch-name>:创建并切换到新的分支。git merge <branch-name>:将指定分支合并到当前分支。git branch -d <branch-name>:删除本地分支(确保分支已被合并)。git branch -D <branch-name>:强制删除分支,无论是否合并。
3. 查看历史与版本回退
git log:查看提交历史。git log --oneline:以简洁模式查看提交历史。
git diff:查看文件的改动差异。git diff <branch1> <branch2>:比较两个分支的差异。
git reset --hard <commit-hash>:将当前分支重置到指定的提交,并且清空暂存区和工作区的所有更改。git reset --soft <commit-hash>:重置到指定的提交,但保留工作区的更改。git revert <commit-hash>:生成一个新的提交,撤销指定的提交。
4. 远程仓库相关
git remote -v:查看远程仓库信息。git remote add <name> <url>:添加远程仓库。git remote remove <name>:移除远程仓库。git push origin <branch>:将指定分支推送到远程仓库。git pull origin <branch>:从远程仓库拉取指定分支。
5. 暂存与恢复
git stash:将当前未提交的改动保存到栈中,并且恢复工作目录的干净状态。git stash pop:应用最近一次保存的工作进度,并将其从栈中移除。git stash list:查看所有存储的工作进度。git stash drop:删除指定的存储进度。
6. 标签管理
git tag:查看当前所有标签。git tag <tag-name>:给当前提交打上标签。git push origin <tag-name>:将标签推送到远程仓库。git push origin --tags:将所有本地标签推送到远程仓库。
7. 解决冲突
- 当你合并分支时,如果有冲突需要手动解决:
- 手动修改冲突的文件。
git add <conflict-file>:标记冲突已解决。git commit:提交合并后的结果。
8. 其他有用的命令
git blame <file>:查看文件中每一行的修改记录和对应的提交者。git reflog:查看所有操作的历史记录(包括已经 reset 或者被删除的提交)。git cherry-pick <commit-hash>:将某个提交应用到当前分支。
这些命令涵盖了 Git 最常用的操作,帮助你进行版本控制、分支管理、协作开发等。可以根据需要选择使用不同的命令来提高工作效率。