记录下工作中,常用的Git命令操作,一个项目经常是多人协作开发,使用好git是开发人员必备的技能,下面记录下一些基本的git操作,后续会记录git解决冲突,合并分支,回滚,tag操作等。
克隆项目 - git clone:
git clone https://test.git
克隆完项目后,如果需要切换到指定的分支branch,需要执行:
git branch -a #查看项目下有哪些分支 git checkout dev-test #切换到dev-test分支 git branch # 分支名称前面有个*,表示当前所在分支
查看哪些文件做了改动 - git status
git status
以下操作是提交代码所需要的操作步骤:
添加需要提交的文件 - git add :
git add a.txt #将a.txt添加到git追踪 git add xxx/testdemo/b.txt #在项目根目录下add文件时,需要写文件的绝对路径 git add . #如果所有文件都需要add,可以用 . 表示当前目录下所有改动的文件
清空add命令向暂存区提交的关于file文件的修改 - git reset HEAD
(意思就是:已经将README.md 添加到本地仓库了,git status查看文件的状态已经变为绿色,这时觉得文件add错了,想撤回文件的状态,操作命令 见红色框框)
git reset HEAD README.md #清空add命令向暂存区提交的关于README.md文件的修改,也就是文件同之前没有任何改变 git status #再次查看文件的改动,再次变为modified
提交修改到本地仓库 - git commit -m ‘xxxx‘
git commit -m ‘添加a.txt文件‘ #提交到本地仓库,并带上本次提交demessage信息
push到远程仓库,有以下几种常用场景:
1. 正常情况下提交代码 - git push origin branch
git push origin master #推送到远程仓库master分支, origin:表示远端仓库地址,master: 表示分支号
2. 两个人同时修改同一个文件,然后commit后,进行push操作
( a 修改了README.md文件并已经提交成功,b也修改了README.md文件,然后进行push操作时),错误信息如下:
git push origin master #将添加到本地仓库的代码,推送到远程仓库
拒绝第一次从master分组获取代码,解决方法就是:需要重新从git远程仓库拉取最新的代码 - git pull
(2个人同时修改同一个文件,如果a已经先提交代码成功,b再次push代码时就会出现该问题,因为b修改的代码不是在a已修改代码的基础上进行修改,而是使用的旧代码进行更改,所以push代码时有冲突)
解决文件冲突的操作步骤如下:
1. 拉取最新的代码,命令如下(出现冲突现象,此时代码的分支更改为: master|MERGING ):
git pull origin master #重新拉取最新的代码,origin:表示远端仓库地址,master:表示拉取代码的分支号
从git远程仓库拉取最新代码时,与本地的代码进行自动合并,出现README.md文件冲突现象: 合并代码时出现冲突现象,需要先解决冲突然后再次commit
2. 编辑冲突的文件,删除错误的修改信息
表红色线的是区分代码冲突的地方,以======为分隔,上面的为最开始的修改,下面的为最新的修改,删除不需要保留的修改即可,然后保存修改。
3. 解决完冲突后,需要git add xx文件到本地仓库
git add README.md #添加解决冲突后文件到本地仓库
4. 再次git commit 提交到本地仓库,弹出commit的日志信息,直接 :q!退出即可。
git commit #解决文件冲突后,直接git commit提交到本地仓库
5. 最后push到远程仓库
git push origin msater #push到远程仓库
拉取最新的代码
git pull origin master #从远程仓库拉取最新的代码到本地,origin:表示远端仓库地址,master:表示分支号
查看提交历史,可以看到每次提交的:提交人、提交时间、提交message等
git log
后续补充~~~~~~~~~~~~
时间: 2024-11-10 01:00:21