优秀的编程知识分享平台

网站首页 > 技术文章 正文

常用的git操作指令(git的常用命令)

nanyue 2024-07-18 03:57:35 技术文章 64 ℃

感谢原带我的技术老大(曹XX),他是一位非常值得尊敬的大佬。哈哈,大多是他整理给我的,我后续有添加。给大家唠。

基本的git操作如下:(常用的为主,不包括所有命令,有兴趣的自己找找资料看,打*号的为比较少用的)mac用终端就可以,windows请下载一下git的命令行工具如tortoise git等


1. 克隆到本地:git clone本地有文件后,进入文件,

例如:克隆项目https://gitlab.gfitgo.com:8090/Gfit-Web/gfit-home/tree/master到本地。

git@gitlab.gfitgo.com:Gfit-Web/gfit-home.git(是你的当前项目的ssh)

git clone git@gitlab.gfitgo.com:Gfit-Web/gfit-home.git

2. 从远程仓库更新到本地:git pull

3. 更改内容后更新(更新前先提交用3.2的命令)到远程仓库:git push

3.1 一般更改后可能会增或删文件需要更改文件结构,一般使用"git add ."就可以,也可以在提交时加上"-a"参数

3.2 一般更新前需要提交本地的改动:git commit -m "提交的内容的简短描述" (加上-a 就是 git commit -a -m "xxx")

4. 查看本地分支:git branch (查看远程的加上 -r)

4.1 创建新的本地分支:git branch [分支名]

4.2 在不同的分支间切换:git checkout [分支名]

4.3 删除本地分支:git branch -d [分支名]

下面两步一起

*4.4 获取本地没有的远程分支:git fetch origin

*4.4获取并切换本地,没有的远程分支git checkout -b develop origin/develop

*4.5 更新本地分支到远程:git push origin [分支名]

*4.6 合并本地另一分支到当前分支:git merge [分支名]

5. 查看当前git的状态:git status (一般就看看现在是在哪个分支上啊,有没有跟远程仓库同步啊之类的)

6. 查看上次提交的日志:git log -p -1 (查看最近一次提交的改动,-2就是最近两次)

7. 提交到临时的工作栈中:git stash (一个觉得没什么用,但实际上还是会用到的命令,特别是在pull的时候跟本地改动有冲突的时候)

*7.1 查看临时工作栈:git stash list

*7.2 重新恢复到某个工作栈:git stash apply [index]

*7.3 恢复上个工作栈并从栈中移除:git stash pop

8. 查看本地版本:git tag (查看远程的加上 -r)(这个本人用的比较少,就不多写了)

9. 查看区别:git diff (不加参数是比较与暂存区的区别,diff有多种用法,详细就不展开了)

常用命令

git config user.name(打印本地仓库使用者的名称)

git config --global user.name "zhailili"(修改本地仓库使用者的名称)

git config user.mail(打印本地仓库使用者的邮件名称)

冲突


git pull --allow-unrelated-histories

版本回退:(已提交到远程)

Git log

git reset --hard 139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96

强制推送本地到远程(覆盖远程):git push -f

删除远程指定文件:

git rm -r --cached a/2.txt //删除a目录下的2.txt文件 删除a目录git rm -r --cached a

git commit -m "删除a目录下的2.txt文件"

git push

Note:

用-r参数删除目录, git rm --cached a.txt 删除的是本地仓库中的文件,且本地工作区的文件会保留且不再与远程仓库发生跟踪关系,如果本地仓库中的文件也要删除则用git rm a.txt

A,clone项目并建立本地分支(同远程分支名一样),然后在项目里创建文件夹并上传(文件夹里不能为空)

1,clone项目到www中,并进入到项目中(在www根文件夹中执行命令):git clonegit@gitlab.gfitgo.com:GFit/managerment.git

cd managerment/

2,建立本地分支:

git branch -r(查看所有分支)

git checkout -b 1.0.1 origin/1.0.1 (在本地建立分支)

3,把创建的新文件上传

git add . (增/改/删文件,任何文件及文件夹的添加修改)

git commit -a -m "test"(提交本地改动,并备注)

git commit -a -m "test"

git push (上传)

备注:

git status(查看状态:如果有错误的话)

git branch(查看分支)

git log -n 1()

常见问题:

1, 查看本地分支:git branch

3,查看远程分支:git branch -r

4,拉取远程分支到本地,比如拉取wx-gfit:git checkout --track origin/ wx-gfit

查看就会发现本地出现了这个分支:

5,切记,每个项目一个分支,修改项目之前一定要切换到那个分支!:git checkout question

6,然后才开始修改项目。完了之后提交。

git add . (增/改/删文件,)

git commit -a -m "test"(提交本地改动,并备注)

git commit -a -m "test"

git push (上传)

7,提交完成后,merge到develop,然后测试修改(上面的步骤循环),所有完成后merge到master。大功告成!

q&A

1, mergr异常原因,一般每个分支(版本)代码不同,merge时出现冲突。所以需要手动用git 把代码提交到那个分支(一般时develop),比如把wx-gfit分支上的代码放到develop上(在本地放),然后develop上提交就行。

Lock问题:rm -rf .git/index.lock

最近发表
标签列表