AddForce moving object in wrong direction

Hello everyone, I am having an issue on my “First person” world. I am currently hitting targets, but they are moving the wrong way as a result. For instance, if I swing forward and hit a target, it moves backwards (towards the screen). If I swing left, the object hit moves right. If I swing right the object moves left. If my avatar is in the middle, the objects hit always move towards the middle and hit the avatar.

Vector3 acceleration = (rigidbody.velocity - previousVelocity) / Time.fixedDeltaTime;
Vector3 force = rigidbody.mass * acceleration;
ResolveCollision(collisionObject, force);

void ResolveCollision(Collision col, Vector3 force)
{
	col.collider.GetComponent<EnemyScript>().Hit(force);
}

public void Hit(Vector3 impulse)
{
	rigidbody.AddForce(impulse, ForceMode.Impulse);
}

You need to define where you are updating previousVelocity (and rigidbody.velocity). My guess is that when you perform the attack, the object stops , gets an instantaneous velocity lower than previous, you get “negative” acceleration, and that leads to an opposite impulse.