标签: git

Git的提交日期或作者日期时间戳的解决方案是什么?

从我所看到的,Git提交日期和作者日期仅精确到一秒.我想知道这是否与它们得到的一样精确,或者我可以得到毫秒甚至微秒的时间戳.

此命令使用第一次提交的提交哈希返回UNIX时间戳:

git show -s --format="%ct" 2d9afdfb9e2fa9b349312734b462bb7d57a684ee
Run Code Online (Sandbox Code Playgroud)

结果: 1421437899

什么是GIT的提交日期或作者日期时间戳精度?

unix git timestamp date

11
推荐指数
2
解决办法
1423
查看次数

使用git merge,如何将错误修复合并到多个长期分支中?

最近在工作中,我们已经从使用SVN切换到使用git.我们必须维护我们软件的多个版本,之前我们将它们设置为分支.所以在使用之后git svn clone,我们最终得到了4个分支:master,5.0,5.1和5.2.

注意:我们使用master作为我们的开发分支.5.0,5.1和5.2都是来自master的分支,并用作生产分支.

几天过去了,相当多的变化已经成为主人.在5.2中发现了一个错误,我们想要修复它.我们尝试了将一个更改合并到Git中的多个分支的解决方案.我们总是可以轻松地合并回主人,但每当我们合并回5.2时,我们就会遇到一堆冲突.我们看到的所有内容都显示了这个过程(为bugfix创建了一个新的分支并将其合并回开发和生产),这表明它应该如下所示:

(master)$ git checkout -b bugfix
# fixed bug and committed

(bugfix)$ git checkout master
(master)$ git merge bugfix
# successful merge

(master)$ git checkout 5.2
(5.2)$ git merge bugfix
# successful merge
Run Code Online (Sandbox Code Playgroud)

然而,对于我们来说,当我们到达最后一行时,git merge bugfix我们会遇到大量冲突.我们甚至没有在错误修复中触及的文件冲突.我们做错了什么?

注意:我们也尝试通过启动5.2中的bugfix分支来完成此过程.然后将错误修复程序合并到5.2中很容易,但将错误修复程序合并到master中会产生冲突.

显示该过程的其他地方:

git merge

11
推荐指数
1
解决办法
3349
查看次数

如何将Excel VBA放入git

我在Excel中继承了一些VBA并想把它放到git中.就目前而言,git将其视为二进制文件,并且不希望进行文件更改增量,而是复制整个文件.

我想将各个宏分解为文件以将它们放入git中.有没有标准的方法来做到这一点?

git excel

11
推荐指数
2
解决办法
4923
查看次数

删除fork后修复打开的PR的"未知存储库"

我有以下场景:

  • 创建了一个github存储库的fork
  • 提交拉取请求(仍然打开)
  • 删除了分叉

现在,当我在github上浏览打开的PR时,存储库部分显示"未知存储库".

我想恢复我的分叉,以使此部分显示其名称.

我的第一个想法是重新分配上游存储库,正确地重新设置它(感谢这个)并祈祷该github自动重新填充PR中的正确名称.

不幸的是,没有发生任

我怎样才能做到这一点?
我应该联系支持吗?

git github pull-request

11
推荐指数
2
解决办法
2099
查看次数

什么是Git"替代机制"?

我正在研究man gitglossary,这个术语让我望而却步 - 因为它根本没有在词汇表中定义.

它只被提到两次(添加了星号):

   alternate object database
       Via the **alternates mechanism**, a repository can inherit part of its
       object database from another object database, which is called
       "alternate".

   repository
       A collection of refs together with an object database containing
       all objects which are reachable from the refs, possibly accompanied
       by meta data from one or more porcelains. A repository can share an
       object database with other repositories via **alternates mechanism**.
Run Code Online (Sandbox Code Playgroud)

这里提到的"替代机制"是什么?

git

11
推荐指数
2
解决办法
3366
查看次数

如何将本地文件夹连接到Git存储库并开始在分支上进行更改?

我是源控制的新手; 在过去,我手动备份了文件副本并对克隆进行了更改,然后在调试后手动将更改传输到主文件.我意识到这与分支机构如何使用Git存储库类似,但我从未使用过.

我下载了Git并在GitLab上创建了一个帐户,并开始了一个新项目.我的网站托管在本地服务器上,我的文件保存在本地.如何将这些文件连接到Git存储库并继续使用分支机构进行开发?

git collaboration version-control repository gitlab

11
推荐指数
1
解决办法
3万
查看次数

为什么我会收到此错误:"远程端意外挂断"?

$ git push -u origin master   
Counting objects: 321523, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (85111/85111), done.
error: RPC failed; curl 55 SSL_write() returned SYSCALL, errno = 10053
fatal: The remote end hung up unexpectedly
Writing objects: 100% (321523/321523), 4.29 GiB | 17.11 MiB/s, done.
Total 321523 (delta 159406), reused 320112 (delta 158718)
fatal: The remote end hung up unexpectedly
Everything up-to-date
Run Code Online (Sandbox Code Playgroud)

git

11
推荐指数
2
解决办法
9438
查看次数

通过提交消息关闭工作项

有没有办法使用VSTS使用提交消息关闭工作项?我尝试过:修复#123,关闭#123或解析#123但只关联提交到工作项.

所以基本上我正在通过提交消息关闭问题,例如在github:https://help.github.com/articles/closing-issues-via-commit-messages/ 但是使用vs团队服务.

git azure-devops

11
推荐指数
2
解决办法
1616
查看次数

Git:在Windows上重命名目录(仅限大小写)

我想在Windows系统上重命名由Git版本化的目录(更改目录名称的大小写):

$ git mv docs DOCS
Rename from 'docs' to 'DOCS/docs' failed. Should I try again? (y/n) n
fatal: renaming 'docs' failed: Permission denied
Run Code Online (Sandbox Code Playgroud)

我也尝试过force-option - 但结果相同:

$ git mv --force docs DOCS
Rename from 'docs' to 'DOCS/docs' failed. Should I try again? (y/n) n
fatal: renaming 'docs' failed: Permission denied
Run Code Online (Sandbox Code Playgroud)

出于某种原因,Git失败了,因为它认为DOCS已经是一个现有的目录,并且该目录应该在其中移动.我知道我可以使用临时目录名重命名和提交,然后重命名和修改提交到最终名称,但是没有办法告诉Git我不想移动到任何其他目录中?

windows git rename

11
推荐指数
1
解决办法
2980
查看次数

此存储库是为Git LFS配置的,但在您的路径中找不到"git-lfs"

请帮助我了解以下错误消息的含义以及如何遵守其请求.

我想复制一个现有的本地git仓库; 然后将该副本推送到新创建的遥控器.

但是我收到以下错误:

此存储库是为Git LFS配置的,但在您的路径中找不到"git-lfs".如果您不再希望使用Git LFS,请删除.git/hooks/pre-push以删除此挂钩.

我在收到此消息之前使用的代码是:

# create new git repo at https://github.com/username/foo-bar.git
cp -r OldProject/ NewProject/
cd NewProject/
git remote remove origin # Remove prior origin from copy operation
git init
git remote add origin https://github.com/username/foo-bar.git
git add -A
git commit -m "first commit"
git push -u origin master
Run Code Online (Sandbox Code Playgroud)

我做错了什么,我该如何解决?请帮助我理解上述错误消息的含义以及如何遵守其请求.

git github

11
推荐指数
3
解决办法
1万
查看次数