Git常用命令记录

初始化一个Git仓库

git init

添加文件到Git仓库,分两步:

  1. 使用命令 git add 可以添加多个文件;
  2. 使用命令 git commit -m ,完成。

查询工作区的状态

git status

如果git status告诉你有文件被修改过,可以查看修改内容

get diff

显示文件日志

较为完全的显示

git log

简单的显示

git log --pretty=oneline

返回文件的某个版本

git reset --hard HEAD^

关于我输入git reset --hard HEAD^但是却跳出来more?的问题

  • 原因,cmd控制台中换行符默认是^,而不是\
  • 所以相当于问你是否需要继续输入
  • 解决方法有如下几种:
  1. 加引号:git reset --hard "HEAD^"
  2. 加一个^:git reset --hard HEAD^^
  3. 换成~:git reset --hard HEAD~ 或者 git reset --hard HEAD~1
    ~ 后面的数字表示回退几次提交,默认是一次,如果是回退回前100个版本也就不必要输出100个^

window cmd 下查看文件内容

type readme.txt

linux 下直接cat readme.txt即可

查看某个版本的id

查看历史命令,以确定要回到哪个历史版本

git reflog

git reset命令既可以回退版本,也可以把暂存区的修改回退到工作区

git reset

注意区别暂存区和工作区(本条无内容)

可以丢弃工作区的修改

git checkout -- file

仅添加到暂存区的时候,注意判断一下状态

git status

将暂存区中的内容删除

git reset HEAD <file>

提交路径理解

工作区 ->暂存区->commit

删除文件

1.手动删除
2.rm
3.del

执行完上述操作之后还需要git rmgit commit一下,注意无论是del还是rm这一步都是git rm

git rm <filename>
git commmit -m "修改注释"

创建sshkey并添加到github或者是gitlab

 ssh-keygen -t rsa -C "[email protected]"

然后疯狂回车。
会显示创建的.ssh在哪个目录下,打开后复制id_rsa中的内容到github或者是gitlab当中

建立与远程库的链接(例如github或者是gitlab)

git remote add <name> [email protected]:xxx/name.git
git remote add <name> [email protected]:xxx/name.git

推送本地文件

下一步,就可以把本地库的所有内容推送到远程库上:

git push -u <name> master

关联一个远程库时必须给远程库指定一个名字,即处需要指定名字,origin是默认习惯命名;

  • 关联后,使用命令git push -u origin master第一次推送master分支的所有内容;

关联后,可以直接推送最新的修改

git push <name> master

相关问题解决

输入

$ git push -u origin master

出现

[email protected]: Permission denied (publickey,keyboard-interactive).
fatal: Could not read from remote repository.

报错。
我的错误原因是,前面ssh的链接错误,导致无法连接
解决办法:
Git常用命令记录_第1张图片
打开你的项目查看SSH,把之前输错的删除,即get remote rm

git remote add origin <shang shu ssh>

如果还是不行,那就打开当前目录下的.git文件夹,然后用记事本打开config,并将里面的url修改为http格式的,例如
Git常用命令记录_第2张图片

删除远程库

根据名字删除,比如删除origin(然后再查看一下远程库的情况)

git remote rm origin
git remote -v

创建和合并分支

第一步建立分支
第二步切到该分支

git branch dev
git checkout dev

可以化简成为一个步骤

git checkout -b dev

git checkout与前面切换撤销修改的命令是同一个,即一个命令具有两个功能
切换到另一个分支也可以用更为合理的 switch

  • 创建并切换到一个新的分支
 git switch -c dev
  • 直接切换到一个已有的分支
git switch master

查看当前分支状态

git branch

将文件修改上传

$ git add <filename>
$ git commit -m "注释"

合并分支

git merge <分支名字>

该命令的作用的是合并指定分支到当前分支

删除分支

git branch -d <name>
git branch

你可能感兴趣的:(java,study,git,github)