git常用命令

【尚硅谷】Git与GitHub基础全套完整版教程的笔记已更新完毕,视频链接为:www.bilibili.com。笔记链接如下:

【尚硅谷】Git与GitHub基础全套完整版教程笔记1-git简介&命令行操作

【尚硅谷】Git与GitHub基础全套完整版教程笔记2-git命令行操作&分支管理

【尚硅谷】Git与GitHub基础全套完整版教程笔记3-GitHub操作

【尚硅谷】Git与GitHub基础全套完整版教程笔记4-Eclipse的git插件&git工作流&Gitlab

下面对常用命令做一个总结,方便快速查阅。

//本地库初始化
git init
//查看当前目录下的文件(不包括隐藏文件)
ls
//查看当前目录下的文件(包括隐藏文件)
ls -lA
//查看.git文件夹下的东西
ll .git/


//配置环境,设置签名(名字和邮箱)
//(a)项目级别/仓库级别:不带参数,仅在当前本地库范围内有效
git config user.name tom_pro
git config user.email goodMorning_pro@taku.com
//签名信息保存在./.git/config文件,打开文件用下面的命令
cat ./git/config

//(b)系统用户级别:登录当前操作系统的用户范围
git config --global user.name tom_glb 
git config --global user.email goodMorning_glb@taku.com
1就近原则:项目级别优先于系统用户级别,二者都有时采用项目级别的签名;
2如果只有系统用户级别的签名,就以系统用户级别的签名为准;
3二者都没有不允许,做一些操作时git会报错。



//状态查看
git status   /*第一代表是哪个分区的,第2是否提交3有没有可提交的文件和提示


//将工作区文件添加暂存区
git add [file name]    /*提交到暂存区,并且转换换行符
//从暂存区撤回
git rm --cached [file name]

//将暂存区文件提交到本地库
//(a)如果进入了编写环境(这和安装时候选择的vim编辑器有关)
git commit [file name]  /*需要输入提交信息日志>写完wq(下面不需要进入vim)
//检测文件
mofified good.txt
//(b)一般的提交操作,不会进入vim编辑情况
git commit -m "commit message" [file name]  //将暂存区的内容提交到本地库 
git restore   //撤销某个文件修改的操作
git reset HEAD file //可以把暂存区的修改撤销掉(unstage),重新放回工作区



//查看历史记录(4种查询方法)
//第一种
git log    //查看版本记录,不够简洁
//第二种
git log --pretty=oneline  //每个历史只显示一行(hash值和日志)
//第三种
git log --oneline   //每个历史只显示一行且显示hash的部分值和日志
//第四种(推荐)
git reflog   //显示历史只显示一行,并且显示指针(要移动到版本多少步)



//前进后退 (3种方式)
//第一种:基于索引值操作[推荐] 
git reset --hard [局部索引值] 
//例子
git reset --hard a6ace91
//第二种:使用^符号,只能后退。注:一个^表示后退一步,n 个^表示后退 n 步
git reset --hard HEAD^^  
//第三种:使用~符号,只能后退。注:表示后退 n 步
git reset --hard HEAD~n
//例子
git reset --hard HEAD~3  //表示后退3步


//删除文件并找回,前提是删除之前文件存在的状态提交到了本地库
git reset --hard [指针位置] 


//比较文件差异
git diff [文件名]      //将工作区中的文件和暂存区进行比较
git diff [本地库中历史版本]  [文件名] 
//将工作区中的文件和本地库历史记录比较,如果不带文件名则比较多个文件。
git diff HEAD^ apple.txt  //可以用HEAD或者版本索引值




//创建分支
git branch [分支名]
//查看分支
git branch -v
//切换分支
git checkout [分支名]
//合并分支
git merge [有新内容分支名]
//解决合并过程中的冲突
//第一步:编辑文件,删除特殊符号
//第二步:把文件修改到满意的程度,保存退出
//第三步:git add [文件名]
//第四步:git commit -m "日志信息"  (注意不能带具体文件名)



/*连接远程库
//初始化
git init

//首先创建远程库
git remote -v  //查看当前所有远程地址别名
git remote add [别名-origin] [远程地址]
//推送操作
git push [远程库别名-origin] [分支名-master]
//然后在github页面刷新,可以看到内容,推送远程库成功。
//克隆操作
git clone [远程地址]


//(团队内合作)团队成员邀请,邀请之后才能提交,主要是操作界面

//远程库拉取的修改,pull=fetch+merge
git fetch [远程库地址别名origin] [远程分支名master]   /*抓取下来
git checkout origin/master   /*切换到链接地址(别名)的master(可查看抓取下来内容)
git checkout master  /*切换回master分支
git merge [远程库地址别名origin/master远程分支名]   /*合并
//或者直接一行代码解决(pull=fetch+merge):
git pull [远程库地址别名] [远程分支名]   /*等于上面步骤


//(团队外合作A邀请B)
//B先forkA的远程仓库,然后再修改代码,选择Pull Request进行后续操作

说明:记录学习笔记,如果错误欢迎指正!写文章不易,转载请联系我。

### Git 常用命令汇总 #### 本地操作 - **初始化仓库** 使用 `git init` 初始化一个新的 Git 仓库。[^1] - **添加文件到暂存区** 使用 `git add <file>` 将文件添加到暂存区。如果需要添加所有文件,可以使用 `git add .`。 - **提交代码到本地库** 使用 `git commit -m '提交描述'` 提交更改到本地仓库。如果需要同时完成 `add` 和 `commit` 操作,可以使用 `git commit -a -m '提交描述'`。 - **修改最后一次提交** 如果需要将当前的 `add` 操作合并到上一次的提交中,可以使用 `git commit --amend`。 #### 远程操作 - **关联远程仓库** 使用 `git remote add origin <远程仓库地址>` 关联远程仓库。[^3] - **查看远程库信息** 使用 `git remote -v` 查看当前配置的远程仓库信息。 - **上传数据到远程库** 使用 `git push -u origin <分支名>` 将本地分支推送到远程仓库,并设置上游分支。之后可以直接使用 `git push` 推送更改。[^3] - **从远程库拉取代码** 使用 `git pull origin <分支名>` 从远程仓库拉取代码并合并到当前分支。这相当于执行了 `git fetch` 和 `git merge` 两个操作。[^2] - **克隆远程仓库** 使用 `git clone <远程仓库地址>` 克隆一个远程仓库到本地。 #### 分支操作 - **创建新分支** 使用 `git branch <分支名>` 创建一个新的分支。 - **切换分支** 使用 `git checkout <分支名>` 切换到指定分支。如果需要同时创建并切换分支,可以使用 `git checkout -b <分支名>`。[^1] - **合并分支** 使用 `git merge <分支名>` 将指定分支合并到当前分支。 - **删除分支** 使用 `git branch -d <分支名>` 删除指定分支。如果强制删除未合并的分支,可以使用 `git branch -D <分支名>`。 #### 多人协作开发 - **更新本地代码** 在多人协作开发中,使用 `git pull --rebase origin <分支名>` 更新本地代码,避免产生过多的合并提交记录。 - **解决冲突** 当出现代码冲突时,Git 会标记冲突部分。手动编辑解决冲突后,使用 `git add <文件名>` 标记为已解决,然后继续执行 `git rebase --continue` 或者 `git commit`。[^3] ```bash # 示例:解决冲突后继续 rebase git rebase --continue ``` #### 其他常用命令 - **查看状态** 使用 `git status` 查看当前仓库的状态,包括哪些文件被修改或未跟踪。 - **查看提交历史** 使用 `git log` 查看提交历史。如果需要简洁的输出,可以使用 `git log --oneline`。 - **查看差异** 使用 `git diff` 查看工作目录与暂存区之间的差异。如果需要查看暂存区与最近一次提交的差异,可以使用 `git diff --staged`。[^1]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值