git常用命令

本文深入解析Git的常用命令,包括更新、提交、合并、查看等操作,并提供实例演示,帮助开发者熟练掌握Git的使用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Git使用

1. git pull    更新服务器代码到本地
a). git pull origin master是将origin这个版本库的代码更新到本地的master主分支

2. git push    将本地代码提交到服务器

3. git log    查看提交信息
a). git log -p    查看历次的log信息及更改情况
b). git log -p -4    查看距现在最近的4次的log信息及更改情况
c). git log frameworks/    查看关于frameworks/目录修改相关的log信息
d). git log --stat    查看log显示文件修改情况
e). git log --stat packages/apps/Contacts/    查看关于packages/apps/Contacts/目录修改相关的log显示的文件修改情况

4. git status    查看工作目录和代码仓库的改动情况

5. git diff 查看工作目录和本地仓库的差异或者本地仓库各个版本的差异
a). git diff packages/apps/Contacts/AndoridManifest.xml    查看工作目录中AndoridManifest.xml和本地仓库中AndoridManifest.xml的不同
b). git diff b46cae3b9a377bcd9cfc249a5778fce647feb961 dc94bf29aab18168e79d6496a89e47dba7a1d494    查看这两个版本的不同(git diff history_old history_current)

6. git commit 提交当前修改内容
a). git commit file1 file2 -m "log message"    提交file1,file2到本地仓库
b). git commit -a -m "log message"    提交所有在Git索引中的改动

7. git add 增加文件到Git索引
a). git add file3 file4    将file3,file4加入到Git索引中

8. git rm 从Git索引移除文件
a). git rm file3    将file3从Git索引中删除,并从本地删除
b). git rm --cached FileName 将文件从Git索引中删除,不删除实际的文件


9. git branch    对分支的增、删、查操作

a). git branch    显示所有本地分支
b). git branch new_branch    在当前版本创建一个名为new_branch的分支
c). git branch -D new_branch    强制删除名为new_branch的分支
d). git branch -r查看服务器上分支
e). git branch -a 显示服务器和本地的所有分支


10. git checkout    在不同的branch切换和还原文件

a). git checkout branch1    切换到branch1分支
b). git checkout origin/cmcc -b cmcc从服务器上pull分支origin/cmcc到本地的cmcc分支
c). git checkout /packages/apps/Contacts/AndroidManifest.xml    会将AndroidManifest.xml文件从上一次提交的版本更新回来,未提交的部分会全部回滚
d). git checkout /package/app/Contacts/ 重新拉这个目录里的文件到本地,如果你不小心把这个目录删除了,可以用这个来恢复
e). git checkout origin/m9002 -b m9002 下载远程分支origin/m9002到本地分支m9002


11. git reset 将当前的工作目录完全回滚到指定的版本号

a). git reset [--fixed] 3204f2f0bdfd6ada86c587b8927cdc5a15c586c1    只更新索引,不更新工作目录,也就是说所有的本地文件都不会更新
b). git reset [--soft] 3204f2f0bdfd6ada86c587b8927cdc5a15c586c1    
c). git reset [--hard] 3204f2f0bdfd6ada86c587b8927cdc5a15c586c1    强制回滚到指定版本号,未提交的和此版本之后的更改全部删掉
d). git reset --hard origin/master 强制和服务器上的master同步


12. git merge 

a). git merge branch1    将branch1的改动合并到当前所在分支

13. git patch
a). git format-patch -1 打一个当前提交的补丁,也就是最后一次的提交改动
b). git fromat-patch -1 6525c43add803bfee37cf5c1cb573ed8aecf529e    打一个指定具体某一次的补丁
c). git format-patch -2 6525c43add803bfee37cf5c1cb573ed8aecf529e    打基于指定具体某个版本的接连两次的补丁


14. git am

git am xxx.patch提交patch

git am --abort 将git的状态恢复到之前状态就可以继续提交patch了


14. tig linux下Git的界面化工具
a). tig查看当前仓库的所有记录
b). tig packages/apps/Launcher2/查看目录packages/apps/Launcher2/下的所有记录

15. 很多命令都可以加上目录来限制操作内容

16. git config

git config --global color.ui true git使用彩色

git config --global core.editor vim 使用vim编辑器


17. git stash

    git stash 隐藏工作目录的改变

    git stash pop 恢复工作目录的改变


18. git whatchanged

git whatchanged packages/apps/Contacts/  查看目录packages/apps/Contacts/下的文件修改状况

<think>我们被要求生成一个关于Git常用命令的汇总列表。根据用户的要求,我们需要提供结构清晰的回答,并尽量保证真实可靠。同时,我们参考了站内引用中提供的Git命令信息。根据引用内容,我们可以整理出以下常用命令:1.基本操作(初始化、添加、提交等)2.分支管理3.远程仓库操作4.标签管理5.历史查看与撤销6.其他实用命令(如删除大文件、清理仓库等)我们将按照这些类别来组织命令。注意:由于引用中提供了一些特定问题的解决方案(如删除大文件),我们也会将其作为实用命令的一部分。另外,注意用户要求使用中文回答,并且行内数学表达式使用$...$格式(但本问题不涉及数学表达式,所以忽略),独立公式使用$$...$$格式(同样不涉及)。同时,在回答末尾生成相关问题。我们开始整理Git常用命令汇总:</think>### Git常用命令汇总 以下是Git常用命令分类整理,帮助您高效管理代码版本: #### 1. 仓库初始化与基础操作 ```bash # 初始化新仓库 $ git init # 克隆远程仓库 $ git clone <远程仓库URL> # 查看当前状态 $ git status # 添加文件到暂存区 $ git add <文件名> # 添加单个文件 $ git add . # 添加所有修改 # 提交更改 $ git commit -m "提交说明" ``` #### 2. 分支管理 ```bash # 创建分支 $ git branch <新分支名> # 切换分支 $ git checkout <分支名> $ git switch <分支名> # Git 2.23+推荐方式 # 创建并切换分支 $ git checkout -b <新分支名> $ git switch -c <新分支名> # 合并分支 $ git merge <要合并的分支名> # 删除分支 $ git branch -d <分支名> # 安全删除 $ git branch -D <分支名> # 强制删除未合并分支 ``` #### 3. 远程仓库操作 ```bash # 添加远程仓库 $ git remote add origin <远程仓库URL> # 查看远程仓库 $ git remote -v # 推送到远程仓库 $ git push -u origin <分支名> # 首次推送 $ git push # 后续推送 # 拉取远程更新 $ git pull origin <分支名> $ git pull --rebase origin <分支名> # 变基式拉取 # 删除远程连接 $ git remote rm origin ``` #### 4. 版本回退与撤销 ```bash # 查看提交历史 $ git log $ git log --oneline # 简洁版日志 # 撤销工作区修改 $ git checkout -- <文件名> # 撤销暂存区文件 $ git reset HEAD <文件名> # 版本回退 $ git reset --hard <commit_id> # 彻底回退 $ git reset --soft <commit_id> # 保留修改 # 恢复删除的文件 $ git restore <文件名> # Git 2.23+ ``` #### 5. 标签管理 ```bash # 查看标签 $ git tag # 创建标签 $ git tag <标签名> # 轻量标签 $ git tag -a v1.0 -m "版本说明" # 附注标签 # 推送标签 $ git push origin <标签名> # 删除标签 $ git tag -d <标签名> # 本地删除 $ git push origin :refs/tags/<标签名> # 远程删除 ``` #### 6. 高级维护 ```bash # 清理历史大文件 $ git filter-branch --force --index-filter \ 'git rm -rf --cached --ignore-unmatch <文件名>' \ --prune-empty --tag-name-filter cat -- --all # 回收存储空间 $ git reflog expire --expire=now --all $ git gc --prune=now # 查看仓库大小 $ git count-objects -vH ``` #### 7. 配置相关 ```bash # 设置用户名/邮箱 $ git config --global user.name "用户名" $ git config --global user.email "邮箱" # 查看配置 $ git config --list # 设置默认编辑器 $ git config --global core.editor vim ``` > **最佳实践提示**: > 1. 频繁提交小变更,保持提交记录清晰 > 2. 使用`.gitignore`文件排除无需版本控制的文件 > 3. 重要分支(如main/prod)设置保护规则 > 4. 推送前先执行`git pull --rebase`避免合并提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值