update git algorithm