我来自SVN背景,所以我不确定典型的git工作流程是什么样的.合并SVN时,提供描述合并的提交消息.这是必要的,因为SVN的合并跟踪在历史上一直很差.
我注意到git的默认行为是如果成功则自动提交合并的结果.这意味着日志通常不会显示合并,因此历史记录中的所有内容看起来都是在一个分支中开发的.这是否更适合将合并显示为额外提交?我可以想出几个原因以及为什么不这样做,但我想要其他用户的一些意见.
我想将我的git历史发布到公共存储库,但是想删除旧的提交.我所看到的所有方法都会改变新提交的SHA1,这不是一个选项,因为我希望能够推送到修改后的repo.反正有没有这样做?
您好我们正在使用CVS并定期开发.我大部分时间只处理三到三个文件.我还要提交文件夹中的所有更改吗?是否可以选择必须提交的文件,并且不允许CVS提交仍在开发中的文件?
如在文件1,文件2和文件3 ....我在一天的大部分时间使用文件1,我检查日志并在文件2中有一些问题,所以我在文件2中快速更改并决定提交.但是文件中的代码仍在开发中,只想提交对file2的更改.那可能吗?
我想确定远程git存储库(origin)是否包含特定的提交.我的用例如下:
我正准备创建一个公开发布.我想要包含代表我正在构建发行版的原始代码库的提交的SHA-1.
我还想确保提交不仅仅是一个本地提交,而且它实际上已被推送到中央存储库(origin).
我认为
git pull --all & git branch --contains commit-hash
然后检查输出以查看它是否包含当前分支的跟踪分支,有效,但看起来相当麻烦.我正在寻找一些更简洁的东西,比如git remote --contains origin commit-hash,或者git cat-file origin commit-hash.我认为在推送或拉动期间确定哪些对象需要传输时,Git必须使用一些管道命令 - 我对内部结构不够熟悉.
谢谢您的帮助.
问题说明了一切.
我希望通过使用我自己的别名来提交真实的电子邮件地址来为我的用户提供一些隐私.有没有可以帮我这样做的钩子?
我正在与合作伙伴一起开发应用程序。我执行数据库部分(PostgreSQL),我的合作伙伴使用python使用SQLAlchemy在Web服务器上实现应用程序。我们大量使用存储过程。一SELECT对在数据库日志那些看起来像这样的一个查询:
SET TRANSACTION ISOLATION LEVEL READ COMMITTED;
SELECT col_a, col_b FROM f_stored_proc(E'myvalue');
ROLLBACK;
Run Code Online (Sandbox Code Playgroud)
在存储过程中,我将某些输入写入日志表。通过SELECTSQLAlchemy 查询的应用程序仅看到SELECT语句,并坚持使用ROLLBACK。记录失败。我需要它COMMIT代替。我的伙伴声称没有简单的方法,我们将不得不完全删除SQLAlchemy。我认为他一定是错的,但是缺乏主张否则的知识。
有没有一种简单的方法可以COMMIT代替SQLAlchemy ROLLBACK?
是什么让我无法执行trans.commit()?我需要为此设置autoflush=False吗?
我已经扫描了常见问题解答,但没有找到答案。
搜索SO揭示了一些相关的问题,例如此处和此处,但我不清楚。
也许这个食谱会起作用?
我正在设计和构建一个iOS应用程序,它使用本地git存储库进行版本控制.到目前为止,我已经将所有内容都置于版本控制之下,包括大型文件夹,例如"设计",其中充满了我的Photoshop资源等等.我现在已经为repo添加了一个远程位置,显然不希望将Design文件夹提交到远程.
我用以下.gitignore文件制作了一个文件:
# File Extensions #
###################
*.psd
# Folders #
###########
/Design/*
Run Code Online (Sandbox Code Playgroud)
哪个应该排除该文件夹和任何Photoshop文档对吗?
如何解开现有设计文件夹(git rm实际上删除文件!)?此外,当我取消它时,它会自动缩小巨大的.git文件夹吗?
非常感谢.
是否可以使用LibGit2Sharp获取指定提交后的所有提交?
我试过以下......但它不起作用:
using ( var repo = new Repository( repositoryDirectory ) )
{
//Create commit filter.
var filter = new CommitFilter
{
SortBy = CommitSortStrategies.Topological | CommitSortStrategies.Reverse,
Since = repo.Refs
};
/*Not Working
if (shaHashOfCommit.IsNotEmpty())
filter.Since = shaHashOfCommit;
*/
var commits = repo.Commits.QueryBy( filter );
}
Run Code Online (Sandbox Code Playgroud) 对不起,这可能是一个愚蠢的问题,但我无法弄清楚问题.
我通过git(bitbucket)克隆了一个分支,更改了一些文件,提交了这些文件并将它们推回到远程源.
现在我想将此提交推送到另一个分支,该分支部分位于当前分支的前面和后面.所以我尝试过:git push origin HEAD:differentBranch但是这没有用("更新被拒绝了,因为推送的分支提示在其远程对手后面").
我怎样才能解决这个问题?再次抱歉,我的git技能仍然可以开发.
commit ×10
git ×8
bitbucket ×2
c# ×1
contains ×1
cvs ×1
file ×1
hook ×1
libgit2sharp ×1
logging ×1
merge ×1
postgresql ×1
push ×1
python ×1
sqlalchemy ×1
svn ×1
transactions ×1
xcode ×1