git常用详细操作命令

164 阅读4分钟

这个时候第一次push需要网址:

$ git add --all
$ git commit -m "提交信息"
$ git remote add origin '远程仓库url'
$ git push -u origin 对应远程分支名
然后下一次就不用那么麻烦了,直接:
 
$ git add --all
$ git commit -m "信息"
$ git push

查看分支库

git branch -a   

跟远程仓库建立关系并切换到此分支

$ git checkout -b soho origin/soho 

当我们从远程仓库项目克隆到本地后,会自动创建本地master分支,并且与远程仓库主分支关联。如果我们需要在本地创建一个分支并且与远程仓库的origin/xxx分支关联,则可以通过以下命令实现:

git checkout --track origin/xxx 

可以使用以下命令查看关联情况:

 git branch -vv


查看状态 本地更改的文件

git status

隐藏修改 释放修改

git stash     
git stash pop

从远程分支拉取内容

git pull origin soho

提交本地文件

git add .

提交后撤回操作

  • 1 如果还没 git add file,使用该指令进行撤销:

    git checkout -- fileName  
    
  • 2 如果已经git add file, 但是没有 git commit -m "" 分两步操作:

    git reset HEAD readme.txt
    git status
    git checkout -- file
  • 3 如果已经git add file 并且已经 git commit ,那么回退版本办法是:
    通过 git log 或者 git log --pretty=oneline 、git reflog
    找到对应的commit id进行回退:git reset --hard 1094a

删除操作

现在你有两个选择,一是确实要从版本库中删除该文件,那就用命令git rm删掉,并且git commit:
    git rm test.txt
    git commit -m "remove test.txt"
另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本:
    git checkout -- test.txt

新建操作

切换到master分支

git checkout master

获取最新的代码

git pull origin master

从当前分支拉copy开发分支:(新建了一个和master一样的分支Dev)

git checkout -b dev

把新建的分支push到远端

git push origin dev

关联

git branch --set-upstream-to=origin/dev

再次拉取验证

git push origin dev

合并分支

切换到master

git checkout master

获取最新代码

git push origin dev

合并:

git merge dev

回退到某个版本

情景一: 明确知道我们要回退到第几个版本

回退到上一个版本:

git reset --hard HEAD^ 

上上一个版本的话:

git reset --hard HEAD^^

回退到20个版本之前的话:

git reset --hard HEAD~20

情景二:已经不记得是第几个版本了

$ git log
$ git reset --hard 52602b0b04b57b33310fa256707518b126d2648c

情景三:回退到某一个文件之后,又需要返回到最近更新的某个版本

$ git reflog  查看每一次命令的记录
$ git reset --hard 52602b0b

从其他仓库拉取分支并将其推送到指定仓库的分支上

如果您需要从其他仓库拉取分支并将其推送到指定仓库的分支上,可以按照以下步骤操作:

  1. 在本地创建一个新的文件夹,作为临时工作目录。例如:
复制代码
mkdir /path/to/temp/folder
cd /path/to/temp/folder
  1. 在该临时目录下使用 git clone 命令,克隆要从中拉取代码的源仓库。命令格式如下:
复制代码
git clone <源仓库地址>

例如,如果要从 GitHub 上的一个仓库中拉取代码,则可以使用以下命令:

复制代码
git clone https://github.com/username/repository.git
  1. 切换到要拉取的分支上。假设待拉取的分支名为 "source-branch",则可以使用以下命令切换到该分支:
复制代码
cd repository
git checkout source-branch
  1. 将代码推送到指定仓库的分支上。首先需要添加指定仓库的远程仓库地址。
复制代码
git remote add target-repo <目标仓库地址>

比如,指定要推送的分支名为 "target-branch",目标仓库的地址为 https://github.com/target-username/target-repository.git,则可将其添加为远程仓库:

git remote add target-repo https://github.com/target-username/target-repository.git
  1. 将待合并分支推送到指定仓库的目标分支上。可以使用 git push 命令实现:
git push target-repo source-branch:target-branch

以上命令表示将本地的 "source-branch" 分支推送到 "target-branch" 分支上,并将其同步到指定的远程仓库中。

综上所述,从别的仓库拉取分支并推送到指定仓库的分支上,大致的操作步骤如下:

mkdir /path/to/temp/folder
cd /path/to/temp/folder
git clone <源仓库地址>
cd repository
git checkout source-branch
git remote add target-repo <目标仓库地址>
git push target-repo source-branch:target-branch

注意,在执行以上操作时,请确保您拥有足够的权限访问源和目标仓库。