1. > 生活百科 >

git查看当前用户 如何查看git当前用户

Git修改已经提交的用户名信息

由于工作或者其他原因,有时候我们会修改git的用户名和邮箱账号,没有改过来就提交,就会导致提交人信息不一致的问题。

现在记录修正回来的方法

如图,这里的提交人信息不是我想要的,需要修改过来

列出需要预览的已经提交的次数,这里我列出5条(因为需要修改的就在这5次之内)

找到你要修改的对应的SHA1 ID,这里我的是 4f12344 和 11400f6 ,如图所示

然后按 i 编辑,把 pick 改成 edit ,按'Esc'退出编辑,按 :wq 保存退出,如图所示

这里的意思是说,你可以使用 git commit --amend 来修改此次提交,修改以后,觉得满意了,执行 git rebase --continue 继续剩下的流程。

由于我们的主要目的是修改提交者的信息,因此光用 git commit --amend 是不够的,我们要使用 git commit --amend --author="作者 <邮箱" --no-edit 这样的操作,这一点是修改提交者信息的关键所在,

如图所示

接着继续执行

如图所示

最后,通过将篡改历史纪录后的结果同步到服务器

最后,在查看提交用户名信息已经修改

Git添加用户名、密码、修改用户名密码

注意: 本地电脑.ssh的公钥id_rsa.pub和私钥id_rsa还是基于自己本地电脑创建的, 然后把自己本地电脑公钥id_rsa.pub添加到自己的gitee或者公司的gitlab上

Git global setup

git config --global user.name undefined

git config --global user.email

Git修改用户名密码

git config --global --replace-all user.name "要修改的用户名"

git config --global --replace-all user.email"要修改的邮箱"

git config --global --replace-all user.password "要修改的密码"

查看修改完后的用户名:git config user.name

查看修改完后的邮箱:git config user.email

查看修改完后的密码:git config user.password

查看用户名、邮箱、密码:

如果是上传在自己的gitee上:修改用户名、邮箱、密码:

如果是上传在公司的gitlab上:修改用户名、邮箱、密码:

最后执行:

上传自己gitee上:

上传公司gitLab上

git push遇到错误: [rejected]master -> master (non-fast-forward)的解决方法

git命令-切换分支

git命令切换分支

Git全局配置

1、查看git的配置列表

我们可以先查看一下git的配置列表:

如果没有配置东西,应该是空的。照着下面配置完成后,你可以再试一下该命令,就会出现一系列配置信息。

2、进行配置

(1)命令行配置

将username和email换成github(或者其它类似远程仓库)的用户名和邮箱。

--global 表示全局的,即当前用户都有效,该配置会出现在 ~/.gitconfig 文件中,~表示当前用户的目录,比如我的是:C:\Users\username.gitconfig

git查看当前用户 如何查看git当前用户git查看当前用户 如何查看git当前用户


怎样连接git远程仓库,设置用户名和密码

当使用HTTPS协议推送代码到Git仓库时,发现每次都需要输入密码,操作起来非常麻烦。下面介绍几种免去输入密码的方法。

HTTPS协议推送

使用HTTPS协议,有一种简单粗暴的方式是在远程地址中带上密码。

> git remote set-url origin

还有一种方法,是创建文件存储Git用户名和密码。

以Windows环境为例,在%USERPROFILE%目录中(一般为C:\Users\yourname),打开Git Bash命令行,创建文件

> touch .git-credentials

在文件中输入仓库域名,这里使用了。

在CMD终端中设置在全局Git环境中,长期存储密码

> git config --global credential.helper store

其他设置密码方式

记住密码(默认15分钟):git config --global credential.helper cache

自定义存储时间:git config credential.helper 'cache --timeout=3600'

SSH协议推送

如果原来的推送地址协议是HTTPS,可以通过换成SSH协议,在远程仓库添加SSH Key来实现推送时免账户密码输入。

> git remote -v // 查看远程地址

> git remote rm origin // 删除原有的推送地址

> git remote add origin 用户名>/版本库名

或者

> git remote -v

> git remote set-url origin 用户名>/版本库名

执行推送。

> git push -u origin master

发现提示权限不够。

The authenticity of host (104.192.143.1)' can't be established.

RSA key fingerprint is SHA256:zzXQOXSRBEiUtuE8AikJYKwbHaxvSc0ojez9YXaGp1A.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added (RSA) to the list of kn

own hosts.

Permission denied (publickey).

fatal: Could not read from remote repository.

Please make sure you have the correct access rights

and the repository exists.

需要在本地创建该帐号的RSA Key。可以参考以下两篇文章:

Windows下配置SSH连接Github

Git如何在本地生成多个SSH key

然后再执行推送。

> git push -u origin master

就可以推送成功了。

Git初始化 暂存区

git --version

git config --global user.name "guoxi.zhang"

git config --global user.email ""

删除Git配置文件中某项值

git config --unset --global user.name

如果拥有系统管理员的权限,你希望注册的别名能被其他用户使用,可以执行如下命令:

sudo git config --system alias.ci commit

也可以只执行如下命令,只在本用户的全局配置中添加Git别名

git config --global alias.ci commit

在git命令输出中开启颜色显示

git config --global color.ui true

git init 命令再当前目录完成版本库的初始化

git init

该命令会自动创建dir目录并在当前目录的dir目录下初始化版本库,所以

mkdir demo cd demo git init

相等于 git init demo

运行该命令之后会在demo目录创建一个 .git 的隐藏文件,隐藏的 .git 目录就是Git版本库(又叫仓库,repository)

.git 版本库所在的目录为工作区

在工作区创建一个welcome.txt文件

echo "hello" > welcome.txt

然后将文件条件到版本库中

git add welcome.txt

git commit -m "initialized"

工作区文件内容搜索命令

git grep "工作区文件内容"

在Git工作区的某个子目录下执行操作的时候,会在工作区目录中依次向上递归查找 .git 目录,找到的 .git 目录就是工作区对应的版本库, .git 所在目录就是工作区,在非 .git 工作区执行git命令时会因为找不到 .git 目录报错

显示版本库 .git 目录所在位置

git rev-parse --git-dir

显示工作区根目录

git rev-parse --show-toplevel

相对于工作区根目录的相对目录

git rev-parse --show-prefix

显示从当前目录回退到工作区的根的深度

git rev-parse --show-cdup

打开本项目的配置文件

git config -e

打开当前用户的配置文件

git config -e --global

打开系统的配置文件

git config -e --system

优先级是本项目>当前用户>系统

读取INI文件中某项的值

git config

.

设置INI文件中某项的值

git config

. value

如果对工作区的文件没有做任何修改,Git默认不会执行提交,使用 --allow-empty 参数允许执行空白提交

git diff 工作区与提交任务(暂存区)中相比的差异

git diff HEAD 工作区和HEAD(当前分支)相比

git diff --cached 或者 git diff --staged 暂存区和版本库文件的差异

git checkout -- welcome.txt 撤销工作区中 welcome.txt 尚未提交的更改

git status git diff 命令扫描工作区变动的原理:先依据 .git/index 文件中记录的(用于跟踪工作区文件的)时间戳,长度等信息判断工作区文件是否改变,如果工作区的时间戳改变了,就说明工作区的文件内容可能被改变了,需要打开文件,读取文件内容,与更改前的原始文件做比较,判断文件内容是否改变。如果判断文件内容没有改变,就将该文件新的时间戳记录到.git/index文件中

文件 .git/index 实际上就是一个包含文件索引的目录树,像是一个虚拟的工作区,在这个虚拟工作区的目录树中,记录了文件名和文件的状态信息(时间戳和文件长度),文件的内容并没有存储在其中,而是保持在Git对象库 .git/objects 目录中,文件索引建立了文件和对象库中对象实体之间的对应关系。下图展示了工作区,版本库的暂存区和版本库之间的关系

git ls-tree -l HEAD 查看当前HEAD指向的目录树

git clean -fd 清空当前工作区中没有加入到版本库的文件和目录

git checkout . 用暂存区内容刷新工作区

git ls-files -s 显示暂存区的目录树

-a 参数会对本地所有的变更的文件执行提交操作,包括对本地修改的文件和删除的文件,但不包括未被版本库跟踪的文件。使用这个命令将失去Git暂存区带来的巨大好处:对提交内容进行控制的能力

Windows下,切换git账号,更改git账号,git提交时设置用户名

由于一些情况,借来一台机器编码,发现git账户是他人的,切换后提交代码,显示的也是他人设定好的名称,略显尴尬。

Windows => 控制面板 => 凭据管理器 => 编辑-重新输入账号密码

修改用户名和邮箱的命令:

gitlab怎么查看用户是否上传代码

打开Github For Windows,点击项目后面的箭头,或者双击项目

进入到项目仓库后,就会在界面右侧看到改动的的代码或者文件,我们在左侧输入此次变动的备注,如下图所示,

点击的“Commit to master”按钮,就会在左侧显示一个“Unsynced Commits”

我们点击右上方的“Sync”按钮,这些软件就会自动上传代码到远程服务器,

上传完毕之后,就会在左侧的“History”里看到刚才上传的版本了

6

为了验证代码是否上传服务器成功,我们可以进入到Github上的项目主页,验证代码是否变动成功

git安装以及配置秘钥

git官网 按照电脑操作系统一直回车下去安装就行

git安装完成后,需要手动配置ssh密钥

配置github的ssh密钥:

1.在桌面上右键,打开git bash查看电脑上是否已经存在SSH密钥:

输入 cd ~/.ssh

2.创建新的ssh key:

输入ssh-keygen-trsa-C ""

执行这条命令会如上图提示文件保存路径,可以直接按Enter,

然后提示输入 passphrase(密码),输入两次(可以不输直接两次Enter),

然后会在 .ssh 目录生产两个文件:id_rsa和id_rsa.pub

3.用记事本打开.ssh目录下的id_rsa.pub文件,复制里面的内容,或者直接执行命令查看:

$ cat ~/.ssh/id_rsa.pub

4、复制ssh key到github:

On the GitHub siteClick “Settings”>Click “SSH and GPG Keys”>Click “New SSH key”

打开github网站,点击右上角扳手图标,然后点击左边菜单的 ssh key, 然后右边页面的 add ssh key,将复制的内容粘贴到github的key中,title可填不填,填好保存即可。

配置user.name和user.email

$ git config --global user.name 'your_name'

$ git config --global user.email

$ git config --global--list查看user信息设置好的user信息

$ git config --list 查看自己的git信息

$ git config --local local只针对某个仓库有效

$ git config --global global对当前用户所有仓库有效

$ git config --system 对系统所有登陆的用户有效

$ git config--list --local

$ git config--list --global

$ git config--list --system

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, website.service08@gmail.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息