git命令

1、git恢复删除的文件(删除动作未commit)

git checkout 删除的文件名

或者
git checkout .


2、git查看提交涉及到的文件

git log --stat


查看某文件的所有提交

git log --pretty=oneline 文件名


3、创建分支

git branch 分支名


4、查看分支

git branch


5、切换分支

git checkout 分支名


6、develop分支的内容合并到master分支
git checkout master
git merge --no-ff develop


7、develop分支的部分提交合并到master分支
git checkout master
git cherry-pick c7bd6c9

c7bd6c9 是个已有的commit id

8、把git add命令提交到暂存区的内容清除
git reset

把本地某次提交删除,并且Push到远程的该次提交也删除

首先获取要删除的提交的上一次提交的commit id
把本地库重置到最后要保留的提交的状态
git reset --hard <commit id> 

重置后的状态强制推送到远程库
git push origin HEAD --force


登录到另一台机器,更新远程代码
git pull origin master

此机器重置本地库为远程库
git reset --hard origin/master



9、列出所有tag
git tag

列出特定的tag
git tag -l 'v0.1.*'


10、新建含附注的tag,建议用含附注的tag
git tag -a v0.1 -m 'tag的注释说明' 

查看tag的附注
git show tag名称

11、推送tag到服务器
git push origin [tagname]

一次推送所有本地新增的标签上去
git push origin --tags


12、查看某用户的提交
git log --author=username


13、显示文件每一行最后的修改人
git blame a.c


14、某次提交涉及的文件和改动
git show <commit-id>


15、查看文件修改(diff)

通常,我们的每个文件有4份影像:本地工作区,暂存区(stage),本地版本库 (local repo),远程版本库(remote repo)。所以我们通过不同的diff选项来比较不同位置的文件影像。

1)工作区与暂存区的比较

    git diff  [file-name]


2)暂存区与本地库的比较

    git diff –cached [file-name]


3)工作区与本地库的比较

    git diff HEAD [file-name] 或 git diff master  [file-name]     #HEAD通常是master的别名


4)本地库与远程库的比较

这个比较麻烦些,我们先要获取远程源代码

    git fetch upstream    #这里upstream是远程代码库

git diff master upstream/master


16、撤销(reset)与反悔(revert)

Git的撤销是指你叫工作区的修改加到暂存区的,你现在想把它撤回——不改变文件。反悔是指,你想用暂存区的影像(staged snapshot)覆盖工作区的文件。

Git中的撤销和反悔也要考虑到:工作区,暂存区,本地库。

1)从暂存区撤销(Unstage)

    git reset – readme.txt #将readme.txt unstage,如果想unstage所有的文件直接 git reset


2)从暂存区反悔,用暂存区文件覆盖工作区文件

    git checkout –  readme.txt    #你将丢失所有unstaged的修改


3)从本地库反悔,用本地库的snapshot来覆盖工作区的文件

    git checkout HEAD – readme.txt  #丢失所有staged和unstaged的修改


4)从本地库撤销到暂存区(Undo commit)

    git reset --soft HEAD^     #HEAD^表示最新提交


5)丢弃掉本地库的最新一次提交,就像该提交不存在
git reset --hard HEAD^



6)从本地库直接撤销到工作区(undo commit => undo stage)

    git reset --mixed HEAD^


17、修改远程库url
git remote set-url origin URL


18、clone某分支
git clone -b 分支名称 url


19、修改用户名和邮件
git config user.name "xx"
git config user.email "xx"


20、修改历史提交的注释

如果倒数第三次的提交注释写得不对,需要修改,可以如下操作:

git rebase -i HEAD~3 #3表示倒数第3次提交

出现3行文本:
pick:*******
pick:*******
pick:*******
要修改哪行,就把那行的pick改为edit,然后退出
这时通过git log可以发现,git的最后一次提交已经变成你选的那个了
git commit --amend

在出现的编辑框里对要修改的commit进行编辑,然后退出
最后
git rebase --continue


21、修改分支名
git branch -m 原分支名 新分支名
<think>好的,我现在需要帮助用户了解Git命令的使用教程和常见命令列表。首先,用户提到想学习Git命令的用法,可能需要基础命令的介绍和一些实际例子。根据用户提供的引用内容,我应该优先包含git config、git add、git commit、git push这些基本命令,因为这些在引用中都有提到。特别是引用1详细介绍了git config和git add的使用,引用3提到了git push的简化操作。 接下来,我需要确保结构清晰,按照用户的要求分步骤讲解。可能的结构是:安装配置、基本工作流程、分支管理、远程仓库操作、其他常用命令。每个部分下给出具体的命令和示例,比如在配置部分,引用1和引用2都提到了git config的使用,包括设置用户名、邮箱和查看配置列表,这些都需要包含进去。 另外,用户示例中的Python代码块提醒我需要用代码块格式展示Git命令,但注意用户的问题是关于Git的,所以应该用命令行代码块,如```bash。同时,需要检查LaTeX格式是否正确,不过这个问题中可能用到的数学公式不多,但如果有的话,比如在解释某些概念时,可能需要使用行内公式,比如$ git add $这样的变量?不过Git命令本身不需要数学公式,所以可能不用,但需要留意系统指令中的要求。 用户还要求生成相关问题,我需要根据内容提出相关问题,比如如何撤销提交、分支管理策略等,这些是用户可能进一步想了解的。 需要确保引用的正确使用,每个引用对应的内容要准确。例如,引用1提到git add .,引用3提到git push -u origin master,这些都要在相应部分标注引用标识。同时,用户提供的引用中没有提到git commit、git status等命令,但这些属于常见命令,可能需要补充,但因为没有引用来源,可能需要避免引用标记,或者如果用户提供的引用中确实没有,可能需要不标注引用,但根据用户给出的引用,只能使用现有的三个引用。 不过,用户提供的引用中,引用1提到了git config和git add,引用2是git config --list,引用3是git push。所以当提到这些特定命令时,添加对应的引用标记,其他命令git commit、git status可能没有引用来源,就不添加引用标识。 最后,生成的相关问题应该围绕Git的进一步学习,比如配置管理、撤销操作、分支合并冲突解决、.gitignore文件使用等,这些都是用户可能感兴趣的点。 现在开始组织内容: 1. 安装与配置:根据引用1和2,介绍git config设置用户信息,查看配置。 2. 基本工作流程:git init, git add(引用1), git commit, git status, git log。 3. 分支管理:git branch, git checkout, git merge。 4. 远程仓库:git remote add, git push(引用3), git pull。 5. 其他命令git clone, .gitignore, git reset(可能没有引用来源,但常见)。 在写作时,确保每个命令的示例正确,比如git add . 来自引用1,要标注[^1]。git config --list来自引用2,标注[^2]。git push -u来自引用3,标注[^3]。 可能还需要检查是否有其他命令在引用中提到,但根据提供的三个引用,主要涉及config、add、push。因此,其他命令可能没有引用来源,但用户的问题需要常见命令列表,所以必须包含,但引用标记只用在对应的部分。 最后生成相关问题,如如何撤销提交、解决合并冲突、配置忽略文件等。</think>### Git 常用命令使用教程 Git 是分布式版本控制系统,以下是基础命令和常见用法: --- #### 一、安装与配置 1. **配置用户信息**(提交时标识身份) ```bash git config --global user.name "你的用户名" git config --global user.email "你的邮箱" ``` 此配置会保存在全局文件(如 `~/.gitconfig`)。 2. **查看当前配置** ```bash git config --list ``` 可检查所有生效的配置项。 --- #### 二、基本工作流程 1. **初始化仓库** ```bash git init ``` 2. **添加文件到暂存区** ```bash git add <文件名> # 添加单个文件 git add . # 添加所有修改和新文件 ``` 3. **提交更改** ```bash git commit -m "提交说明" ``` 4. **查看状态与日志** ```bash git status # 查看工作区和暂存区状态 git log # 查看提交历史 ``` --- #### 三、分支管理 1. **创建与切换分支** ```bash git branch <分支名> # 创建分支 git checkout <分支名> # 切换分支 git checkout -b <分支名> # 创建并切换 ``` 2. **合并分支** ```bash git merge <目标分支> ``` --- #### 四、远程仓库操作 1. **关联远程仓库** ```bash git remote add origin <仓库URL> ``` 2. **推送代码** ```bash git push -u origin master # 首次推送需指定分支[^3] git push # 后续推送可简化 ``` 3. **拉取更新** ```bash git pull origin master ``` --- #### 五、其他常用命令 | 命令 | 用途 | |------|------| | `git clone <仓库URL>` | 克隆远程仓库到本地 | | `git reset <文件>` | 撤销暂存区的修改 | | `git diff` | 查看文件差异 | ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值