Git常用命令

1、代码下载

git clone + 代码库地址

2、检出需要修改的分支

进入本地仓库,执行:
git checkout + 远程分支名(会自动创建和远程分支同名本地仓)
ex:
git checkout feature/windml

3、修改提交

git status
git add . // 添加所有文件
git add filename // 添加指定文件
git commit -m "描述" . //提交所有文件
git commit -m "描述" filename //提交指定文件
git push

4、其他常用命令

1). branch

git branch -a //查看所有分支
git branch -d + branchname //删除本地分支
git branch -v // 查看各个分支最后一个提交信息
git branch -vv //查看当前的本地分支和远程分支的关联关系

2).

git checkout --trank oringin/branch_name // 本地新建一个分支名为branch_name分支,会自动关联远程的同名分支
git pull // 下载远程代码并合并
git push // 上传远程代码并合并
git diff filename // 比较文件的不同,即暂存区和工作区的差异

3).代码暂存

git stash save "save message" // 执行存储时添加备注,方便查找,只有git stash也行,但查找时不方便识别
git stash list // 查看stash了哪些存储
git stash pop // 回复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录中,牧人为第一个stash,即stash@{0}
git stash pop stash@{num} // 应用并删除其他stash
git stash apply // 应用某个存储但不会将存储从存储列表中删除,牧人使用第一个存储
git stash apply stash@{num} // 应用某个存储
git stash clear // 删除所有缓存的stash

4).指针移动

git reflog
git reset --hard 04dfdf

5).游离指针处理

在游离提示状态下
git checkout 本地分支(放弃修改)

6).撤销和回退

// 撤销所有本地改动代码
git checkout .
// git add 后撤销
git reset HEAD . // 撤销所有add文件
git rest HEAD -filename // 撤销单个add文件
// git commit 后撤销
git reset --soft head // 只回退commit的信息,保留修改代码
git reset --hard head^ // 彻底回退到上次commit版本,不保留修改代码
HEAD : 当前版本
HEAD : 上一个版本
--hard : 参数会抛弃当前工作区的修改
--soft : 参数会回退到之前的版本,但是保留当前工作区的修改,可以重新提交
// 本地代码回退到与git远程仓库保持一致
git reset --hard 远程分支名
// git push 撤销
回滚此次push到服务器的代码:
git log查看commit的信息
git revert 以前commit的id
git push 此时本地回滚的代码到服务器就可以了
// git merge 撤销:
git checkout 【行merge操作时所在的分支】
git reset --hard 【merge前的版本号】

5 fork代码仓后更新主仓代码

1). 配置当前fork仓库的原仓库地址

git remote add upstream <原仓库github地址>

2). 查看当前仓库的远程仓库地址和原仓库地址

git remote -v

3). 获取原仓库的更新。使用fetch更新,fetch后会被存储在一个本地分支upstream/master上。

git fetch upstream

4). 合并到本地分支。切换到本地master分支,合并upstream/master分支

git merge upstream/master

5). 使用git log就能看到原仓库的更新

git log

6). 如果需要自己github上的fork的仓库需要保持同步更新,执行git push进行推送

git push origin dev

posted @ 2021-10-21 10:11  柳叶昶  阅读(52)  评论(0)    收藏  举报