git

Git没有记录你的Contributions的修复记

星期二, 五月 15th, 2018 | JAVA-and-J2EE, linux | 没有评论

1.可以通过git log 查看提交的用户不一致造成的,只要调整成一致的用户即可(主要是email地址)

2.全局指定用户信息(如果有不同的账号信息,见3配置,可能公司和个人不同的git账号)

git config --global user.email "你的邮件地址"
git config --global user.name "你的Git用户名"

3.配置指定的git项目的config文件从而使每个独立账号
修改(.git下的config文件)
新增内容如下:
[user]
name = 正确的用户名
email = 正确的邮件地址

4.git提交历史的恢复及修改错误的email(若很在意提交的email信息请谨慎执行,比如把公司的email信息带到了log中,本人已验证可以正确执行)
重新clone 一份操作
4.1复制粘贴脚本,并根据你的信息修改以下变量:旧的Email地址,正确的用户名,正确的邮件地址

#!/bin/sh
git filter-branch --env-filter '
OLD_EMAIL="旧的Email地址"
CORRECT_NAME="正确的用户名"
CORRECT_EMAIL="正确的邮件地址"
if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ]
then
    export GIT_COMMITTER_NAME="$CORRECT_NAME"
    export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL"
fi
if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ]
then
    export GIT_AUTHOR_NAME="$CORRECT_NAME"
    export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL"
fi
' --tag-name-filter cat -- --branches --tags

4.2按 Enter键 执行脚本。

4.3用git log命令看看新 Git 历史有没有错误

4.4把正确历史 push 到 Git

git push --force --tags origin 'refs/heads/*'

删除此次的clone
5.现在已经完全记录了你的提交数(4不执行的话,下次提交才会生效)

Tags:

git忽略整个文件夹及移除已经提交的文件

星期五, 十二月 8th, 2017 | JAVA-and-J2EE, linux | 没有评论

一些自动编译的class文件也会提交到git上,每次都有文件去提交很影响代码回查.

如下操作使其不再提交,只要把其列入ingore中.

1.在项目的根目录(跟.git文件夹所在目录同层)建立.gitignore文件,在里面声明即可.

内容如下:

#ignore these files
*.class
classes/
target/
build/

2.如果之前文件已提交过,则需要先清除原文件(文件夹加-r即可),针对特定文件做清理如下

$ git rm *.class
$ git rm -r classes/

3.最后git add .gitignore 再git commit -m “ignore” 即可

Tags:

自动化git更新初步实践之crontab

星期一, 二月 20th, 2017 | JAVA-and-J2EE | 没有评论

启用crontab做自动化构建git代码步骤如下:

1. crontab -e 每5分钟执行一次输出执行结果到日志文件中

*/5 * * * * /home/wx.sh >> /home/wx.log 2>&1

2.踩坑wx.sh 的环境变量问题 一定要source /etc/profile 文件,其他指令也最好绝对地址

#!/bin/sh
source /etc/profile
cd /home/www/
/usr/local/git/bin/git pull
chown -R www:www /home/www

完毕

Tags: ,

git常用使用简易教程

星期日, 七月 24th, 2016 | JAVA-and-J2EE | 没有评论

最简单 基本常用的信息 不怎么用记不得的指令 翻录保存

一:安装
下载 git OSX 版

下载 git Windows 版

下载 git Linux 版

二:创建新仓库
创建新文件夹,打开,然后执行

git init

以创建新的 git 仓库。

三:检出仓库
执行如下命令以创建一个本地仓库的克隆版本:

git clone /path/to/repository

如果是远端服务器上的仓库,你的命令会是这个样子:

git clone username@host:/path/to/repository

四:工作流
你的本地仓库由 git 维护的三棵“树”组成。第一个是你的 工作目录,它持有实际文件;第二个是 缓存区(Index),它像个缓存区域,临时保存你的改动;最后是 HEAD,指向你最近一次提交后的结果。

trees

五:添加与提交
你可以计划改动(把它们添加到缓存区),使用如下命令:

git add <filename>
git add *
</filename>

这是 git 基本工作流程的第一步;使用如下命令以实际提交改动:

git commit -m "代码提交信息"

现在,你的改动已经提交到了 HEAD,但是还没到你的远端仓库。


六:推送改动
你的改动现在已经在本地仓库的 HEAD 中了。执行如下命令以将这些改动提交到远端仓库:

git push origin master

可以把 master 换成你想要推送的任何分支。

推送之前和之后 都记得 核查下对应的状态 指令

git status

如果你还没有克隆现有仓库,并欲将你的仓库连接到某个远程服务器,你可以使用如下命令添加:

git remote add origin <server>
</server>

如此你就能够将你的改动推送到所添加的服务器上去了。
› Continue reading

Tags:

Search

文章分类

Meta