0%

git常用命令

记录一下我常用的git命令,以备不时之需。

1. 放弃本地的修改强制远程覆盖本地

1
2
git fetch --all
git reset --hard origin/master

2. 获取远程分支前记得要更新

1
git fetch

3. 将本地分支提交到远程非主分支上

1
2
3
4
5
6
7
8
git pull origin <远程分支名>:<本地分支名> // 将远程指定分支 拉取到 本地指定分支上
......
git pull origin <远程分支名> // 将远程指定分支 拉取到 本地当前分支上
......
git push origin <本地分支名>:<远程分支名> // 将本地当前分支 推送到 远程指定分支上
git push origin <本地分支名> // 将本地当前分支 推送到 与本地当前分支同名的远程分支上
git push // 将本地当前分支 推送到 与本地当前分支同名的远程分支上
git push -u origin <本地分支名> // 将本地分支与远程同名分支相关联

4. github文件夹有白色箭头并且不能打开的解决办法

1
2
3
4
5
6
7
8
9
1、删除文件夹里面的.git文件夹

2、执行git rm --cached [文件夹名]

3、执行git add [文件夹名]

4、执行git commit -m "msg"

5、执行git push origin [branch_name]

5. 强制push到远程

1
git push -u origin master -f

6. 快速关联/修改Git远程仓库地址

1
2
3
4
git remote -v //查看git对应的远程仓库地址
git remote rm origin //删除关联对应的远程仓库地址
git remote -v //查看是否删除成功,如果没有任何返回结果,表示OK
git remote add origin https://github.com/developers-youcong/Metronic_Template.git //重新关联git远程仓库地址

7. 如何将本地git仓库推送到远程

1
2
首先在github上面创建新仓库(注意不要添加任何文件)
修改关联远程仓库将关联远程仓库改为新仓库的ssh地址

8. 如何更换本地git对应的远程并更换分支

1
2
....
git push --set-upstream origin master
  • 法2
1
2
// 先修改对应的远程git库地址
// 在idea的图形化Git界面,对本地分支进行推送

9. git删除分支

  • git 删除本地分支
1
git branch -d <BranchName>
  • git 删除远程分支

    1
    2
    3
    4
    // 查看远程分支
    git branch -a
    // 假如显示远程分支的名字是`origin/test`
    git push origin -d test

10. 取消当前的merge操作

1
git merge --abort

11. 丢弃掉目前所有修改(没有add过)

1
git clean -fdx

12. 在gitignore的时候忽略已经跟踪过的文件

1
git rm --cached <file_path>

13. 解决问题:The following untracked working tree files would be overwritten by merge

这个错误通常发生在尝试从远程仓库拉取代码时,但本地工作区存在未跟踪的文件,而这些文件与即将拉取的代码发生了冲突。为了解决这个问题,可以尝试以下几种方

  1. 提交或保存本地的修改:如果对工作区的修改是有意义的,可以先提交或保存这些修改。可以使用以下命令将修改的文件添加到暂存区并提交:

    1
    2
    git add .
    git commit -m "保存本地修改"

    或者使用适当的命令(如 git stash)将修改的文件暂存起来,以便稍后再应用这些修改。

  2. 放弃本地的修改:如果对工作区的修改并不重要,可以放弃这些修改,并清理工作区。使用以下命令将工作区恢复为与远程仓库一致的状态:

    1
    2
    git reset --hard HEAD
    git clean -df

    第一条命令会将工作区和暂存区的修改恢复为最近的提交状态,第二条命令会删除未被跟踪的文件和目录。

  3. 手动合并冲突:如果想保留本地的修改并尝试手动解决冲突,可以使用以下命令拉取代码并进行合并:

    1
    2
    git fetch
    git merge origin/develop

    这会将远程仓库的 “develop” 分支与本地的当前分支进行合并。然后,可以手动解决冲突,并在解决完冲突后提交修改。