上一篇
如何高效掌握Git常用命令?
- 行业动态
- 2024-10-06
- 1
Git常用命令包括:
git clone
克隆仓库,
git status
查看状态,
git add
添加文件,
git commit
提交更改,
git push
推送到远程,
git pull
拉取更新,
git branch
管理分支。
Git 工作区域
区域 | 说明 |
工作区 | 本地编辑器里改动的代码,所见即所得 |
暂存区 | 通过git add 指令将工作区代码提交至此 |
本地仓库 | 通过git commit 将暂存区代码提交至此 |
远程仓库 | 托管代码的远端仓库,通过git push 推送代码 |
初始配置
命令 | 说明 |
git config global user.name "yourname" |
配置用户名 |
git config global user.email "youremail@xxx.com" |
配置用户邮箱 |
git config global list |
查看当前配置信息 |
git config global alias.co checkout |
配置简写,例如使用git co 代替git checkout |
sshkeygen t rsa C "youremail@xxx.com" |
生成本地 ssh key |
cat ~/.ssh/id_rsa.pub |
查看本地 ssh key |
高频命令
1、克隆仓库
命令 | 说明 |
git clone |
克隆远端仓库到本地 |
git clone b branch1 |
克隆远端仓库到本地并同时切换到指定分支branch1 |
git clone myproject |
克隆远端仓库到本地并指定本地仓库文件夹名称为myproject |
2、添加文件到暂存区
命令 | 说明 |
git add . |
将所有修改的文件都提交到暂存区 |
git add a.js b.js |
将指定的文件a.js 和b.js 提交到暂存区 |
git add ./js |
将js 文件夹下修改的内容提交到暂存区 |
3、提交到本地仓库
命令 | 说明 |
git commit m "your commit message" |
将工作区内容提交到本地仓库并添加提交信息 |
git commit m "new message" amend |
对上一次 commit 记录进行覆盖 |
git commit amend noedit |
跳过校验直接提交 |
git commit am |
一次性从工作区提交到本地仓库 |
4、推送到远程仓库
命令 | 说明 |
git push |
将当前本地分支内容推送到远程分支 |
git push setupstream origin branch1 |
推送当前分支并建立与远程上游的跟踪 |
git push f |
强制提交 |
5、拉取远程仓库并合并
命令 | 说明 |
git pull |
拉取远程仓库并合并到本地仓库 |
git pull rebase |
使用 rebase 模式进行合并 |
6、切换分支
命令 | 说明 |
git checkout branch1 |
切换到已有的本地分支branch1 |
git checkout origin/branch1 |
切换到远程分支origin/branch1 |
git checkout b branch2 |
基于当前本地分支创建一个新分支branch2 并切换至该分支 |
git checkout origin/branch1 b branch2 |
基于远程分支origin/branch1 创建一个新分支branch2 并切换至该分支 |
git checkout file |
撤销工作区文件内容的修改 |
git checkout . |
撤销工作区所有内容的修改 |
7、查看信息
命令 | 说明 |
git status |
显示有变更的文件 |
git log |
显示当前分支的版本历史 |
git log stat |
显示commit历史,以及每次commit发生变更的文件 |
git log S [keyword] |
根据关键词搜索提交历史 |
git log [tag] HEAD pretty=format:%s |
显示某个tag之后的所有变动,每个commit占据一行 |
8、其他操作
命令 | 说明 |
git branch |
列出所有本地分支 |
git branch r |
列出所有远程分支 |
git branch a |
列出所有本地分支和远程分支 |
git branch branchname |
新建一个分支,但依然停留在当前分支 |
git checkout b branchname |
新建一个分支,并切换到该分支 |
git branch track branchname remotebranch |
新建一个分支,并与指定的远程分支建立追踪关系 |
git merge branchname |
合并指定分支到当前分支 |
git cherrypick commithash |
选择一个commit,合并进当前分支 |
git branch d branchname |
删除分支 |
git push origin delete branchname |
删除远程分支 |
相关问答FAQs
1、如何撤销已经提交的 commit?
回答:可以使用git reset
命令来撤销已经提交的 commit,具体命令如下:
“`bash
git reset hard <commitid>
“`
其中<commitid>
是你想要回退到的 commit ID,这将丢弃你在该 commit 之后所做的所有更改。
2、如何查看特定文件的历史变更记录?
回答:可以使用git log
命令配合文件路径参数来查看特定文件的历史变更记录,具体命令如下:
“`bash
git log follow [filepath]
“`
其中[filepath]
是你要查看的文件的路径,加上follow
选项可以跟踪文件的重命名。
当然可以,以下是我归纳的Git常用命令,包括了一些基本的操作和高级命令,以下是按功能分类的命令列表:
初始化和配置
git init # 初始化一个新的Git仓库 git clone <url> # 克隆一个仓库 git config global user.name "Your Name" # 设置用户名 git config global user.email "your_email@example.com" # 设置用户邮箱
文件操作
git add <file> # 添加文件到暂存区 git add . # 添加所有未跟踪的文件到暂存区 git commit m "提交信息" # 提交暂存区的更改 git reset hard # 重置当前分支到指定commit,撤销之后的所有更改 git checkout <file> # 撤销对文件的更改 git rm <file> # 删除文件 git mv <file> <new_file> # 重命名文件
分支操作
git branch # 查看分支 git branch a # 查看所有分支 git branch b <name> # 创建新的分支 git checkout <name> # 切换到指定分支 git merge <branch> # 合并指定分支到当前分支 git rebase <branch> # 另一个分支的上游分支,所有提交将应用在当前分支上 git branch d <name> # 删除分支 git branch D <name> # 强制删除分支
提交操作
git push origin <branch> # 将当前分支的更改推送到远程仓库 git pull # 从远程仓库获取更改并合并到当前分支 git push origin force # 强制推送更改到远程仓库,即使有冲突
查看历史记录
git log # 查看提交历史 git log pretty=format:"%ad | %an | %s" date=local # 格式化提交历史 git show <commit> # 查看指定提交的详细信息 git diff # 查看提交之间的差异 git diff <commit> # 查看与指定提交的差异 git diff <commit>...<commit> # 查看多个提交之间的差异
标签操作
git tag # 列出所有标签 git tag <tagname> # 创建一个新标签 git tag d <tagname> # 删除标签 git push origin <tagname> # 推送标签到远程仓库 git push origin tags # 推送所有标签到远程仓库
其他
git remote v # 查看所有远程仓库 git remote add <name> <url> # 添加一个新的远程仓库 git remote rename <old> <new> # 重命名远程仓库 git fetch <remote> # 从远程仓库获取所有分支的更新 git branch u <remote>/<branch> # 设置当前分支跟踪的远程分支
命令是Git中非常基础的命令,熟练掌握这些命令可以帮助你更高效地使用Git进行版本控制。
本站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本站,有问题联系侵删!
本文链接:http://www.xixizhuji.com/fuzhu/116649.html