引言

使用gitlab提交代码的时候,若是使用的命令行,则需要输入命令行指令。下面是日常遇到的常用的命令行指令。

详情

git命令行常用指令的使用:

  1. git status #上次提交后是否对文件再做了修改项目1
  2. git add . #添加所有的变动
  3. git checkout -b 文件夹名称 #创建本地分支并切换分支 git checkout -b pr/ffr
  4. git commit -m “描述” #提交修改 git commit -m “修改什么”
  5. git merge origin/develop “本地分支” #合并origin/develop上别人所做的修改到自己的本地分支 git merge origin/develop pr/ffr
  6. git push origin “本地分支” #推送本地分支到远程,并建立联系 git push origin pr/ffr
  7. git rebase -i 编号 #合并多次提交,将前几次的提交合并为一次
  8. git checkout 分支名 #切换分支 git checkout pr/FFR-color git cherckout develop
  9. git pull #更新当前分支的状态
  10. git branch #列出本地分支
  11. git branch -a #列出本地分支与远程分支
  12. git branch -D 分支名 #删除分支(目前仅用于删除本地分支)
  13. git remote -v #可以查看远程仓库信息
  14. git branch 分支名 #仅仅创建 一个新分支,并不会自动切换到新分支中去
  15. git rebase --abort #退出git rebase
  16. git reset 提交编号 #git rebase -i 提交编号,之后出现错误,可以回退到之前未合并时的日志状态
  17. git commit --amend -m “描述” #修改上一次的提交的描述
  18. git stash #暂存上一次的修改,准备切换到其他的分支
  19. git stash pop #还原上一次的修改,将暂存的修改加入到新的分支
  20. 关于19和20命令的应用示例:
    应用实例:
    在分支ui/DiagnosticPage上修改了部分代码,但是中途需要更新develop上的代码,切换到分支develop上更新代码,后再切换到ui/DiagnosticPage上使用指令
    git stash pop,或者在develop上新建分支ui/bar,使用指令git stash pop.
  21. git reset HEAD #使暂存区的代码退回到最近一次的状态,应用场景,提交修改后,即git add .之后,想撤销,这时可以使用git reset HEAD退回到没有提交git add .之前工作区的修改不变,只是改变暂存区的状态
  22. git checkout 文件名 #可以回退到暂存区保存的文件
    应用场景:
    直接从develop更新的代码,git status查看状态,显示个别ui文件发生变化,但实际上没有改动ui文件。使用此git checkout 文件名 指令可以回退到
    暂存区的文件,即用暂存区的文件覆盖(替换)工作区的文件。
  23. git log --author=“名字” #查看指定人的提交记录(但是好像不全)
  24. git blame 文件名 #查看文件每一行的更改历史,包含修改文件的人名,时间等,这里的文件名为绝对路径或者相对路径。
  25. git log 文件名 #查看文件的更改历史。

git使用中常见问题

  1. git commit -m "xxxxx"中的提交内容写错了,想重新编写:
    git commit --amend #重新编辑提交的注释内容
  2. 删除远程分支,该分支只有自己一个人在使用,修改代码后,提交到远程服务器上(我是gitlab),发现提交的内容不对,想删掉重新提交
    git push origin --delete 分支名 #删除远程分支 git push origin --delete dsa/index
  3. 查看文件修改了那些内容
    git diff 文件绝对路径 #查看文件相对于最近一次所作的修改,文件绝对路径——指整个完整的文件路径
  4. 别人新建的分支,自己使用git branch查看本地分支,查看不到,使用git branch -r查看远程分支,若是分支能够查看到,这时切换到本地分支git checkout 本地分支,使用git pull没法拉取最新代码,实际上是没有建立本地分支与远程分支的联系,这时建立本地分支与远程分支的联系,使用指令:
    git branch --set-upstream-to=origin/本地分支名 远程分支名
    建立本地分支与远程分支的联系之后,使用git pull拉取最新的代码。
  5. 指定的文件回退到上一个版本,使用指令:
    git checkout [commit-id] 文件名(包含文件路径)
    commit-id的查看方式:
    git log 文件名

个人小结

以下仅为自己在当时所在公司的代码提交流程。
一个完整的提交过程为,(新建)切换到本地分支后,在本地分支开发,之后提交本地分支修改,提交前需合并别人在自己建的分支上的修改,切换到目标分支上develop,更新develop上别人所做的修改,
将本地develop上的修改,合并到自己建的分支上,有问题解决问题,运行程序看看是否有问题,合并最后一次合并develop与自己建的分支下提交的代码为一次提交,推送到远程自己建的分支,代码提交后发起merge request。
若最后已经将之前修改的代码合并,通过了代码审核,则可以切换到被开发的分支,更新git pull该分支的代码。
一次完整的代码开发后提交过程记录如下:
在自己的建的本地开发分支上
git add . #添加所有的变动
git commit -m “描述” #提交修改 git commit -m “修改什么”
git checkout 分支名 #切换开发分支 git cherckout develop
git pull #更新开发分支上别人所做的修改
git checkout 分支名 #切换到自己建本地开发分支 git checkout dsa/UItest
git merge origin/develop “本地分支” #合并origin/develop上别人所做的修改到自己的本地分支,有时候没有加origin git merge origin/develop dd/UItest
git log #查看日志
git rebase -i 提交编号 #合并为一次提交(本地合并)
git push origin 本地分支 #推送本地分支到远程分支

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐