git提交代码到服务器后,某些文件权限变了是怎么回事?

git提交代码到服务器后,某些文件权限变了是怎么回事?,第1张

新建的文件在git中会有缓存,如果某些文件已经被纳入了版本管理中,就算是在.gitignore中已经声明了忽略路径也是不起作用的,这时候我们就应该先把本地缓存删除,然后再进行git的push,这样就不会出现忽略的文件了。git清除本地缓存命令如下:

git rm -r --cached .

git add .

git commit -m 'update .gitignore'

可以试下这个命令,先删除本地缓存,再push。

一、安装

软件:msysGit-fullinstall-1.8.1.2

打开之后设置安装路径,默认为C:\msysgit,如图:

注意:如果要自定义安装路径,请不要安装在带有空格的路径以及含有中文的路径下点击“OK”以后开始安装,首先将文件解压到安装目下,然后会自动开始编译,编译结束之后,若看到与下图中类似的内容,则表明编译成功。

二、配置

注意:在配置过程中会对一系列文件进行编辑,请使用支持 unix 格式的编辑器Notepad++,

1、C:\msysgit\msysgit\etc\gitconfig 添加:(这里选择了默认安装路径)

[gui]encoding = utf-8[i18n]commitencoding = GB2312

2、C:\msysgit\msysgit\etc\inputrc 修改两行为:

set output-meta onset convert-meta off

3、C:\msysgit\msysgit\git\contrib\completion\git-completion.bash 末尾增加:

alias ls='ls --show-control-chars --color=auto'

4、C:\msysgit\msysgit\etc\bash_profile 末尾增加:

export LESSCHARSET=utf-8

三、gitlab服务器端的设置

访问gitlab服务器,界面如下:

输入账号密码登陆以后(假设你的账号是user_test@user.test),点“New Project”,这里设置工程名为example,创建工程之后网页会有提示: You won't be able to pull or push project code via SSH until you add an SSH key to your profile 这时我们需要把刚才生成的公钥递交到服务器上,点击“add an SSH key”,出现如下界面:

我们需要生成一对 Key(这里指密钥),然后才能通过加密的方式和服务器的代码库取得同步。现在运行C:\msysgit\msysgit\msys.bat,并执行以下命令:(注意请把user_test@user.test替换成你的账号)

$ ssh-keygen -t rsa -C "user_test@user.test"

一路回车,如图:

密钥生成成功!密钥分成两个文件,一个私钥(id_rsa)、一个公钥(id_rsa.pub)。私钥保存在你的电脑上,公钥交项目负责人添加到服务器上。用户必须拥有与服务器公钥所配对的私钥,才能访问服务器上的代码库。

【注意!】为了项目代码的安全,请妥善保管你的私钥!因为一旦私钥外泄,将可能导致服务器上的代码被泄漏!

接下来将公钥提交给gitlab服务器即可。打开C:\Users\Administrator\.ssh\id_rsa.pub,将里面的内容复制到“add an SSH key”网页上的key文本框中,Title填写为你的邮箱账号,这里为user_test@user.test,保存后即添加成功。

【注意!】这里的Administrator为windows下的登陆用户,如果不清楚登陆用户名,点击开始菜单即可看到用户名,见下图:

现在回到刚才的工程目录对应的网页中,有提示信息,按照它给的步骤一步步来即可,这里作简单解释:

Git global setup:git config --global user.name "user_test"

#git的全局设置,设置一次即可,这里设置用户名

git config --global user.email "user_test@user.test"

#git的全局设置,设置一次即可,这里设置邮件

Create Repositorymkdir example

#在当前目录创建example工程文件夹

cd example

#切换目录example目录

git init

#初始化本地的git仓库

touch README

#创建一个新文件,名字为README

git add README

#将对README文件的修改通知git

git commit -m 'first commit'

#将通知给git的修改提交到本地仓库上,-m为设定提交理由:first commit

git remote add origin git@10.10.144.235:user_test/example.git

#添加远程服务器端的git仓库,名字为origin,链接内容为最后一串字符

git push -u origin master

#将本地git仓库的内容推送到origin链接上,推送版本默认为主版本

第一次提交后会提示连接不能建立,因为rsa的fingerprint没有验证,我们选择yes之后随即开始推送,如果出现类似于如下图的情况,那么表明推送成功!

以后若要再次提交只需要执行 :

git add xxx(xxx为修改的文件) git commit -m 'xxx'(xxx为提交的原因) git push -u origin master(本地推送到远程服务器端)

git设置f权限。

1、发现644,r等于4,w等于2,x等于1,需要将其修改为可执行权限755。

2、git,ls,files,显示有关索引和工作树中文件的信息。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/404421.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-21
下一篇2023-05-21

发表评论

登录后才能评论

评论列表(0条)

    保存